Я попытался создать приложение JavaFX в IntelliJ Idea IDE, но получил ошибку компиляции, в которой говорилось:
java: пакет javafx.application не существует.
Я изменил Project SDK и Project Language Level на Java 8, перезагрузил проект, но это не помогло. Затем я проверил, включен ли плагин JavaFX в настройках.
Поиск в Google и StackOverflow не дал мне больше идей о том, что не так. Заранее благодарим за любую помощь.
PS Я использую IntelliJ Idea 14.0 с java8.1.0_25 в ОС Archlinux.
java
intellij-idea
javafx
rob111
источник
источник
Ответы:
Как указано здесь , JavaFX больше не включен в openjdk.
Так что проверьте, есть ли у
<Java SDK root>/jre/lib/ext/jfxrt.jar
вас в пути к классамProject Structure -> SDKs -> 1.x -> Classpath
? Если нет, может быть, поэтому. Попробуйте добавить его и посмотрите, решит ли это вашу проблему, например, в Ubuntu, затем установите пакет openjfx с помощьюsudo apt-get install openjfx
.источник
Это должно быть вашим идеальным решением. Попробуйте и наслаждайтесь. Если какая-то команда не работает должным образом, это означает, что если вы получите какую-либо ошибку, попробуйте решить ее самостоятельно. Я дал вам главное, что вам нужно. Если ваше приложение находится в другом месте или ваша системная архитектура отличается, решите это самостоятельно. Сделать это очень просто. Просто следуйте моему данному решению.
Шаг 0:
sudo apt-get install openjdk-8-jre
Шаг 1
Шаг 2:
sudo cp /usr/share/java/openjfx/jre/lib/ext/* /usr/lib/jvm/java-1.8.0-openjdk-amd64/lib
Шаг 3:
sudo cp /usr/share/java/openjfx/lib/* /usr/lib/jvm/java-1.8.0-openjdk-amd64/lib
Шаг 4:
sudo chmod 777 -R /usr/lib/jvm/java-1.8.0-openjdk-amd64
теперь откройте новый проект или перестройте свой проект. Удачи.
источник
sudo chmod 777 -R /usr/lib/jvm/java-1.8.0-openjdk-amd64
плохая идея! Не делай этого!ls -lha
покажет это.Вы можете использовать тот , который поставляется с IntelliJ:
<intellij>/jre64/lib/ext/jfxrt.jar
.источник
Вам необходимо загрузить пакет java-openjfx из официальных репозиториев Arch Linux. (Также убедитесь, что у вас есть пакет openjdk8-openjdk). После этого откройте свой проект в Intellij и перейдите в Project-Structure -> SDK -> 1.8 -> Classpath и попробуйте удалить старый JDK, который у вас был, и щелкните каталог для нового JDK, который теперь будет содержать jfxrt.jar.
источник
У вас может быть более низкий уровень языка проекта, чем у JDK.
Убедитесь, что: «Структура проекта / проект / Проект-> уровень языка» ниже, чем ваш JDK. У меня была такая же проблема с JDK 9, и уровень языка по умолчанию был установлен на 6.
Я установил Project Language Level на 9, и после этого все заработало.
У вас может быть такая же проблема.
источник
Другой способ решения проблемы: щелкните левой кнопкой мыши папку проекта в структуре проекта слева и щелкните «Открыть настройки модуля» в списке действий. В новых окнах щелкните SDK, который находится в меню. Заголовок «Настройки платформы» Затем проверьте список «Путь к классам», если вы можете найти путь к подключаемому модулю jfxrt, если нет, щелкните символ + справа и выберите репертуар подключаемого модуля jfxrt (C: \ Program Files \ Java \ jdk1.8.0 \ jre \ lib \ ext \ jfxrt.jar на моем рабочем столе)
источник
Пример приложения Java:
Я перекрестно отправляю свой ответ из другого вопроса здесь, поскольку он связан и, похоже, решает проблему в вопросе.
Вот мой пример проекта с OpenJDK 12, JavaFX 12 и Gradle 5.4.
Надеюсь, кто-то сочтет проект Github полезным.
Инструкции для Scala случая :
Кроме того, ниже приведены инструкции, которые работают с плагином Gradle Scala , но не работают с Java. . Я оставляю это здесь на случай, если кто-то еще использует Scala, Gradle и JavaFX.
1) Как упоминалось в вопросе, необходимо настроить плагин JavaFX Gradle. Open JavaFX содержит подробную документацию по этому
2) Кроме того, вам понадобится JavaFX SDK для вашей платформы, где-то распакованный. ПРИМЕЧАНИЕ. Обязательно прокрутите вниз до раздела Последние выпуски, где JavaFX 12 (по какой-то причине первым идет LTS 11).
3) Затем в IntelliJ перейдите к
File -> Project Structure -> Libraries
, нажмите кнопку ➕ и добавьтеlib
папку из распакованного JavaFX SDK.Для более подробных инструкций со снимками экрана ознакомьтесь с отличной документацией Open JavaFX для IntelliJ. Я не могу заставить работать глубокую ссылку, поэтому выберите,
JavaFX and IntelliJ
а затемModular from IDE
в навигаторе документов. Затем прокрутите вниз до шага3. Create a library
. Если у вас возникли проблемы, попробуйте проверить и другие шаги.Трудно сказать, точно ли это та же ситуация, что и в исходном вопросе, но она выглядела достаточно похоже, чтобы я попал сюда, поэтому я добавляю здесь свой опыт, чтобы помочь другим.
источник
В IntelliJ Idea,
Убедитесь, что следующие параметры настроены правильно,
Шаг 1:
Файл -> Настройка -> Плагины -> найдите javafx и убедитесь, что он включен.
Шаг 2: структура проекта (Ctrl + Shift + Alt + s)
Настройки платформы -> SDK -> 1.8 -> Убедитесь, что путь к классам должен иметь "jre \ lib \ ext \ jfxrt.jar"
Шаг 3:
Project Settings -> Project -> Project SDK - следует выбрать 1.8
Настройки проекта -> Проект -> Уровень языка проекта - настроен как 8
Ubuntu: если в ваших SDK не найден jfxrt.jar, установите sudo apt-get install openjfx
источник
У меня была такая же проблема , в моем случае я решил ее :
1) переходим в Файл -> Структура проекта ----> Глобальные библиотеки 2) ищем jfxrt.jar, включенный по умолчанию в jdk1.8.0_241 \ lib (после его установки) 3) нажмите + в левом верхнем углу, чтобы добавить новая глобальная библиотека, и я указал путь к моему jdk1.8.0_241 Ex: (C: \ Program Files \ Java \ jdk1.8.0_241).
Я надеюсь, что это поможет вам
источник