4

编辑:您可以直接转到帖子末尾的 2018-02-13 更新以获取更新信息

我可以提供完整的源代码,因为这个问题已经出现在我的开源项目 JMarkPad 中。

在这里找到它

问题

基本上:

  • 构建总是有效的,我得到一个正常工作的 .jar 没有任何问题。
  • gradle link在没有 3rd 方软件(在本例中为 JFoenix)的情况下创建本机 dist(运行)也可以。
  • gradle link使用 3rd 方软件(在本例中为 JFoenix)创建本机 dist(运行)会引发以下内容:

:链接全部

:JMarkPad:app:clean

:JMarkPad:app:compileJava

:JMarkPad:app:processResources

:JMarkPad:app:classes

:JMarkPad:app:jar

:JMarkPad:app:link

错误:找不到模块应用程序

:JMarkPad:app:link 失败

:链接全部失败

有这方面的经验吗?请随意浏览整个项目并提出任何问题,我真的需要帮助,我很乐意帮助任何试图帮助我的人。

感谢您的耐心等待。

编辑:

jlink 命令可以在 app/gradle.build 文件中找到:

commandLine "${java_home}/bin/jlink", '--module-path', "libs${File.pathSeparatorChar}${java_home}/jmods",
        '--add-modules', 'app', '--launcher', 'app=app/ui.UI', '--output', 'dist', '--strip-debug',
        '--compress', '2', '--no-header-files', '--no-man-pages'

编辑2:完全错误:

9:28:38: Executing task 'link'...

:app:clean
:app:compileJava
:app:processResources
:app:classes
:app:jar
:app:link
Error: Module app not found
:app:link FAILED

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':app:link'.
> Process 'command 'C:\Program Files\Java\jdk-9.0.4/bin/jlink'' finished with non-zero exit value 1

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 1s
5 actionable tasks: 5 executed
Process 'command 'C:\Program Files\Java\jdk-9.0.4/bin/jlink'' finished with non-zero exit value 1
9:28:39: Task execution finished 'link'.

2018-02-13 更新:

https://github.com/mayuso/JMarkPad/tree/java-9-integration

它目前使用一个名为 JFoenix 的库,可以在 build.gradle 文件中的依赖项声明中看到:

https://github.com/mayuso/JMarkPad/blob/java-9-integration/build.gradle

有问题的图书馆在这里:

https://github.com/mayuso/JMarkPad/tree/java-9-integration/libs

所以现在,当我尝试使用 运行软件gradle run、使用 jlink 编译gradle build或使用 jlink 进行分发时,它总是说error: module not found: com.jfoenix.

我问过 JFoenix mantainers,这是几位有 Java 9 和 JLink 经验的 Java 博主,但还没有人能够解决这个问题。

知道我在做什么错吗?

非常感谢您的耐心等待。

4

0 回答 0