Я перешел на Ubuntu 18.04.Который имеет java 10 по умолчанию jvm
Теперь мои приложения, использующие javafx, больше не могут компилироваться.
cannot find symbol
[ERROR] symbol: class ObservableMap
Я попытался добавить параметры в плагин maven-compiler-plugin для загрузки javafx.graphicsmodule.
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<compilerArgs>
<arg>--add-modules</arg>
<arg>javafx.graphics</arg>
</compilerArgs>
</configuration>
</plugin>
результат:
[ERROR] COMPILATION ERROR :
[INFO] -------------------------------------------------------------
[ERROR] module not found: javafx.graphics
конечно, java --list-modules |grep fx ничего не возвращает.
Я потратил более 10 часов, пытаясь выяснить это.
TL: DR Что я должен делать, чтобы скомпилировать мои модули JavaFX с Java 10?
минимальный проект:
/ pom.xml
<project>
<modelVersion>4.0.0</modelVersion>
<packaging>jar</packaging>
<name>java10fx</name>
<artifactId>java10fx</artifactId>
<version>0.0.1</version>
<groupId>my.test</groupId>
<build>
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.7.0</version>
<configuration>
<release>10</release>
</configuration>
</plugin>
</plugins>
</build>
</project>
/ src / main / java / MyApp.java
import javafx.application.Application;
import javafx.stage.Stage;
public class MyApp extends Application{
public static void main(String[] args) {
launch(args);
}
@Override
public void start(Stage primaryStage) throws Exception {}
}
ошибка:
java10fx/src/main/java/MyApp.java:[1,26] package javafx.application does not exist