Jigsaw Maven JavaFX Project - Как экспортировать? - PullRequest
0 голосов
/ 20 апреля 2020

Я занимаюсь разработкой приложения JavaFX в одном модуле maven с использованием модулей Java (Jigsaw). Мое приложение работает, и у меня нет ошибок или предупреждений в Eclipse. Теперь я хочу экспортировать работающий jar.

Я попробовал это: mvn clean install javafx: jlink

И получил это сообщение об ошибке: "automati c модуль не может использоваться с jlink: org .slf4j из файла: ///home/user1/.m2/repository/org/slf4j/slf4j-api/1.7.30/slf4j-api-1.7.30.jar "

Это мой модуль -info.class выглядит следующим образом:

    //needed exports
    exports myapp to javafx.graphics;
    exports myapp.gui to javafx.fxml;
    exports myapp.model to javafx.fxml;
    opens myapp.gui to javafx.fxml;

    // javafx
    requires transitive javafx.base;
    requires transitive javafx.controls;
    requires transitive javafx.fxml;
    requires transitive javafx.graphics;

    // log4j
    requires org.apache.logging.log4j.core;
    requires org.apache.logging.log4j;
    requires org.apache.logging.log4j.slf4j;
    requires junit;
    requires org.slf4j;

Есть идеи о том, как экспортировать работающую банку?

Ответы [ 2 ]

0 голосов
/ 20 апреля 2020

Хорошо, у jlink все еще были проблемы с ним.

Это решение https://leward.eu/2020/01/20/java-module-slf4j-jlink-javafx.html

Использование более нового slf4j (alpha 2.x).

Он просто суммирует каждый модуль, который должен быть проектом модуля мозаики ...

0 голосов
/ 20 апреля 2020

Ответ довольно прост. Модули Automati c просто не поддерживаются jlink. Посмотрите здесь, чтобы увидеть, как это можно обойти: https://github.com/dlemmermann/JPackageScriptFX

...