java - 无法在 winrun4j ini 文件中识别 vmargs
问题描述
我刚刚将我的应用程序从 Java8 移动到 Java10,作为其中的一部分,我现在需要添加
--add-modules java.xml.bind
避免java.lang.NoClassDefFoundError: javax/xml/bind/JAXBException
例外。
这在我的批处理文件中工作正常
JVM64\bin\java --add-modules java.xml.bind -cp lib;lang -Xms150m -Xmx400m -jar lib/SongKong-5.7.jar %1 %2 %3 %4 %5 %6 %7 %8 %9
但我无法让我的等效 winrun4j .ini 文件工作
我试过添加
vmarg.1=--add-modules java.xml.bind
然后尝试
vmarg.1=--add-modules
vmarg.2=java.xml.bind
但两者都没有任何效果,从 winrun4j 运行时我仍然得到 NoClassDefFoundError
解决方案
我无法让它工作,但我确实找到了解决我的问题的方法。通过使用我的应用程序部署 jaxb jar,就像使用任何 3rd 方库一样,我不再需要使用 -add 模块。
由于我正在使用 maven 构建我的应用程序,因此我必须将以下内容添加到我的 pom.xml 文件的依赖项部分。
<dependency>
<groupId>javax.xml.bind</groupId>
<artifactId>jaxb-api</artifactId>
<version>2.2.11</version>
</dependency>
<dependency>
<groupId>com.sun.xml.bind</groupId>
<artifactId>jaxb-core</artifactId>
<version>2.2.11</version>
</dependency>
<dependency>
<groupId>com.sun.xml.bind</groupId>
<artifactId>jaxb-impl</artifactId>
<version>2.2.11</version>
</dependency>
<dependency>
<groupId>javax.activation</groupId>
<artifactId>activation</artifactId>
<version>1.1.1</version>
</dependency>
推荐阅读
- jsonschema - 验证数组 json 包含几个使用 json 模式的无序对象
- c# - 正则表达式
- lua - 创建混合和最大功能
- r - 如何通过单击 timevis 图表中的项目来创建弹出窗口?
- javascript - 输入字段中的响应文本
- node.js - 护照js,身份验证失败,http 500。没有响应
- c# - Microsoft.Office.Word.Interop 2nd Document 一直以只读方式打开
- amazon-web-services - 如何在 API 网关中传递路径参数来调用 lambda 函数?
- groovy - JMeter:@ 表示法(用于 xml)
- c# - 弹丸旋转