«Путь к классам неполон. Будут сообщены только синтаксические ошибки» в VSCode с Java Play Eclipse Project - PullRequest
0 голосов
/ 09 мая 2019

Прежде всего : каждый ответ, который я нашел на эту ошибку, касался файла Java вне полного проекта, здесь это неприменимо.

Я пытаюсь вернуться кмой старый проект java play, в игре 2.6.Я «затмил» его командой sbt eclipse.Он был написан на Java 8.

Скорее всего, это проблема конфигурации VSCode, поскольку sbt compile работает в этом проекте без сбоев, приложение java play запускается и все работает нормально.

Моя система работаетиспользуя OpenJDK 1.8 в глобальном масштабе.Моя ОС - Ubuntu 18.04.

Моя проблема:

В какой-то момент в моем коде у меня есть следующие строки:

import java.util.concurrent.CompletableFuture;

// some more code

return CompletableFuture.supplyAsync(() -> forbidden());

И VSCode даетмне эта ошибка:

Метод supplyAsync (Поставщик) в типе CompletableFuture не применим для аргументов (() -> {}) Java (67108979)

Кроме того, когда я открываю любой файл Java в моем проекте, я получаю следующую ошибку:

Путь к классу не завершен.Будут сообщаться только синтаксические ошибки

Но в моем проекте у меня есть следующие файлы Eclipse

  • .classpath
  • .project
  • .settings/org.eclipse.core.resources.prefs
  • .settings/org.scala-ide.sdt.core.prefs

Мой путь к классам включает, но не ограничивается ( полный файл пути к классам здесь ):

<classpathentry kind="src" path="app"/>
<classpathentry kind="src" path="conf"/>
<classpathentry kind="src" path="target/scala-2.12/twirl/main"/>
<classpathentry kind="src" path="target/scala-2.12/routes/main"/>

(Весь мой исходный код находится в app)

В моих настройках VSCode относительно Java у меня есть:

    "java.home": "/usr/lib/jvm/java-1.8.0-openjdk-amd64",
    "java.configuration.updateBuildConfiguration": "interactive",
    "java.format.comments.enabled": false,
    "java.format.settings.url": "https://raw.githubusercontent.com/google/styleguide/gh-pages/eclipse-java-google-style.xml"

Примечание: указанная здесь ошибка аргументаэто просто пример, у меня есть другие, такие как:

return CompletableFuture.completedFuture(Optional
            .ofNullable((Subject) ctx.args.get(ConfigKeys.SOME_CONFIG_KEY)));

Говоря мне:

Метод Nullable (T) в типе Необязательный не применим для аргументов (Тема) Java (67108979)

Я почти уверен, что это потому, что мой редактор VSCode плохо настроен, так как в прошлый раз, когда я работал над этим проектом, он также был с VSCode, и у меня не было такой проблемы.

1 Ответ

0 голосов
/ 09 мая 2019

Проблема решена: расширение sbt в VSCode вызывало некоторые помехи.

...