Есть проект на OpenJDK11 + OpenJFX11. Запускал через Maven, но необходимо перейти на Gradle. Делал всё по их туториалу (Modular IntelliJ with Gradle)
module-info.java
module Application {
requires javafx.controls;
requires javafx.fxml;
requires javafx.graphics;
requires javafx.media;
requires java.desktop;
opens ru.app to javafx.fxml;
exports ru.app;
}
build.gradle
plugins {
id 'application'
id 'org.openjfx.javafxplugin' version '0.0.7'
}
repositories {
mavenCentral()
}
javafx {
modules = ['javafx.controls', 'javafx.fxml', 'javafx.graphics', 'javafx.media']
}
mainClassName = "$moduleName/ru.app.Main"
task jlink(type: Exec) {...}
При запуске:
> Task :compileJava FAILED
/home/.../Class.java:3: error: package javafx.embed.swing does not exist
import javafx.embed.swing.SwingFXUtils;
^
FAILURE: Build failed with an exception.
Я попробовал добавить requires javafx.embed.swing в module-info, но модуль не найден (javafx.embed тоже самое)
Как мне добавить этот модуль и запустить проект?
Мне удалось запустить проект. Решением было:
1) Добавить библиотекой JavaFX jmods. File -> Project Structure -> Libraries -> выбрать папку с распакованными jmod'ами
2) Добавить в build.gradle в modules javafx {modules = ['javafx.swing']}
3) Добавить в module-info.java requires javafx.swing;
Продвижение своими сайтами как стратегия роста и независимости