问题标签 [moditect]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - 使用 moditect 将模块信息添加到依赖项而不下载依赖项
我正在尝试使用 moditect 以允许在使用自动命名模块 (ArcGIS) 时创建运行时映像。ArcGIS 模块需要 openjfx 11(我也将其添加为依赖项,因为它是一个 JavaFX 项目)。但是,当我尝试构建运行时映像时,出现以下错误
我认为这是因为 maven 还在项目中添加了 ArcGIS openjfx 依赖项(这包括每个平台(win、mac、linux)的 openjfx,这导致它具有重复的 javafxs。
我应该如何添加模块信息而不添加 openjfx 依赖项?
如果有帮助,这里是pom.xml
带有 moditect 插件的部分
java - 使用 ModiTect 生成模块信息并创建运行时映像
javafx - 分发使用自动模块的 JavaFX 应用程序
我创建了一个 JavaFX 应用程序。它在我的 Intellij IDE 中完美运行。现在我想分发应用程序——即我想获得一个用户可以下载的安装程序,然后它会为他们安装应用程序。
我在这里找到了一篇非常有趣的文章。这篇博客文章基本上描述了我想要实现的目标。但是有两个区别:
我使用的是 Maven 而不是 Gradle
我有使用自动模块的依赖项,例如 iText7 和 apache.commons.lang3
自动模块的使用使事情变得非常复杂。有一个名为 ModiTect(此处)的 GitHub 项目已被编写用于解决这些问题。虽然我没有使用 ModiTect 的经验,甚至我的 Maven 知识也几乎不存在(意思是:我真的不知道我在 pom.xml 中做什么)。
我正在寻找的是关于如何将ModiTect(以及必要时的jpackage)集成到我的pom.xml中的解释(逐步),以便为我的使用自动模块(以及sqlite)的JavaFX应用程序获取安装程序数据库,但这应该不是问题)。
有人可以提供这个解释或让我参考教程吗?
我在这个问题的结尾提供了一个 MWE。MWE 是一个 TestApp。为了说明问题,运行应用程序并按下“打印 PDF”按钮。在资源中创建一个 pdf --> pdf
执行 javafx:run 时 MWE 会编译运行 执行 javafx:jlink 时会出现与 automodules 使用有关的错误
我不知道如何解决这个问题。ModiTect 似乎是一个很有前途的插件。另一种可能的方法可以在这个GitHub 存储库中找到。但正如我之前所说:我的 Maven 知识不足以真正掌握这里发生的事情。任何帮助对我来说意义重大!
MWE:
pom.xml:
模块信息.java:
TestAppController.java:
测试应用程序.java:
testApp.fxml:
java - 如何使用 Maven Moditect 插件错误修复“无法为 *.jar 派生模块描述符”?
我正在创建一个基于 Maven 的 JavaFX 15 应用程序,并且正在使其模块化,以便能够用于javafx:jlink
为其生成运行时映像。
为了解决自动模块的问题,我正在使用Moditect 插件,但现在遇到了一个不同的错误:
执行目标 org.moditect:moditect-maven-plugin:1.0.0.RC1:generate-module-info 的 generate-module-info 失败:无法为 path\to\xalan-2.7.2.jar 派生模块描述符
这些是我最重要的部分pom.xml
:
我知道已经有很多关于这个的问题被问到这个问题,但他们的答案都没有详细说明如何解决这个问题。
maven - 如何使用 Moditect Maven 将自动模块转换为显式模块
我正在将我的 Swing 项目重写为 javafx,并在其中使用一些 jfoenix 控件。
eclipse中使用的VM参数
我的 pom.xml
我的模块信息.java
jasperreports 是一个自动模块
现在我可以在我的 pom 中使用 maven-assembly-plugin 或 shade-plugin 制作 Runnable fat jar。但是在运行它时,我无法打开使用 jfoenix 组件的那些窗口。我已经在命令行中运行它在堆栈跟踪中得到了这些运行时错误
警告:不支持的 JavaFX 配置:从“未命名模块 @1506acf0”加载类java.lang.reflect" 到未命名的模块@1506acf0
尝试在命令行中使用 VM 参数运行但失败。
然后在我的 pom 中使用 javafx-maven-plugin 并将 VM 参数作为选项传递。现在我可以使用目标 javafx:run 运行它,但是 javafx:jlink 失败并且堆栈跟踪是
错误:自动模块不能与 jlink 一起使用:jasperreports from file:///home/user/.m2/repository/net/sf/jasperreports/jasperreports/6.17.0/jasperreports-6.17.0.jar [错误] 命令执行失败的。
我从https://github.com/moditect/moditect#generating-module-infojava-descriptors尝试了 moditect-plugin 。但是无法遵循它,也没有找到更详细的解释或示例。
有人请帮助我制作一个传递 VM 参数的胖 jar 或成功运行目标 javafx:jlink。
java - 使用 Moditect 创建运行时图像目标失败
我想module-info.java
在 Windows 中为我的 java 项目生成并创建一个运行时映像。我正在使用 Moditect ( https://github.com/moditect/moditect ),这是我pom.xml
到目前为止。
运行时我不断收到此错误mvn clean install
:
这是我的项目布局。
如何修复我pom.xml
的问题,以便create-runtime-image
目标可以成功创建运行时映像?
编辑:我发现如果我禁用插件,运行mvn install
,然后重新启用插件,这个错误是不一致的。因此,我有一种感觉,这是 Moditect 的问题。此外,Moditect 仍然很新(最新版本是 1.0.0),我找不到关于它的简单教程。由于这些原因,我决定在我的项目中停止使用 Moditect,而是使用jlink
.
java - myJar.jar is a modular JAR file that cannot be specified with the --generate-module-info option. Maven ModiTect plugin add-module-info
I'm writing an application that uses the JavaFX library and the JBibTex library.
I'm also using Maven in my project to be able to package my application in a .jar. Using the javafx-maven-plugin, the command one has to use to package the application is mvn javafx:jlink
.
The issue now is that javafx:jlink only supports explicit modules. JBibTex isn't an explicit module so it yields the following error:
Error: automatic module cannot be used with jlink: jbibtex
I've then come accross the ModiTect maven plugin during my searches which sounded promising. So I've set my pom.xml up like so:
If I then run the mvn clean install
command, i get the error:
Error: myProject-0.0.1-SNAPSHOT.jar is a modular JAR file that cannot be specified with the --generate-module-info option
which is caused by the add-module-infos
goal.
What is wrong with my setup? Why cannot ModiTect add the module-info of JBibTex to my .jar (if that's actually what it's doing)?