Maven、Webstart 和 Java 8 令人头疼的问题
Posted
技术标签:
【中文标题】Maven、Webstart 和 Java 8 令人头疼的问题【英文标题】:Maven, Webstart, and Java 8 Headaches 【发布时间】:2015-09-21 10:52:31 【问题描述】:我正在尝试将项目从使用 Java 6 编译转换为 Java 8。我们正在使用 webstart-maven-plugin,目前有一种解决方法 (http://mojo.10943.n7.nabble.com/jira-MWEBSTART-269-Java-8-support-td44357.html) 通过添加以下依赖项来使用 Java 8 进行编译到插件定义。
...
<build>
<pluginManagement>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>webstart-maven-plugin</artifactId>
<version>1.0-beta-6</version>
<dependencies>
<dependency>
<groupId>org.codehaus.mojo</groupId>
<artifactId>webstart-pack200-impl</artifactId>
<version>1.0-beta-6</version>
</dependency>
<dependency>
<groupId>org.codehaus.mojo</groupId>
<artifactId>keytool-api-1.7</artifactId>
<version>1.4</version>
</dependency>
</dependencies>
...
</plugin>
</plugins>
</pluginManagement>
</build>
...
这让我克服了最初的问题。
我现在收到以下错误。
[ERROR] Failed to execute goal org.codehaus.mojo:webstart-maven-plugin:1.0-beta-6:jnlp-inline (default) on project <redacted>: Unable to parse configuration of mojo org.codehaus.mojo:webstart-maven-plugin:1.0-beta-6:jnlp-inline for parameter pack200: Cannot find default setter in class org.codehaus.mojo.webstart.Pack200Config -> [Help 1]
帮助链接转到下一页。 https://cwiki.apache.org/confluence/display/MAVEN/PluginConfigurationException
据我所知,webstart-pack200-impl 依赖项需要一些配置来定义使用哪个 setter。我在网上找到的有关二传手的任何信息似乎都与此不同。我不知道是否有办法为依赖项设置配置。
还是我以完全错误的方式看待这个问题?
在此先感谢
【问题讨论】:
请注意,在 beta-7 中,您不再需要添加这些依赖项...除非您确实希望它 pack200 在这种情况下您需要webstart-pack200-impl 依赖项。 【参考方案1】:错误指向在旧版本的 webstart 插件配置中配置为 <pack200>false</pack200>
的 pack200。
这可以通过更改 pack200 配置来解决(在插件设置的<configuration>
部分内)
<pack200><enabled>false</enabled></pack200>
有关更多详细信息,请参阅http://www.mojohaus.org/webstart/webstart-maven-plugin/upgrade.html 部分“自 1.0-beta-3 以来的重要更改”
【讨论】:
以上是关于Maven、Webstart 和 Java 8 令人头疼的问题的主要内容,如果未能解决你的问题,请参考以下文章
Java WebStart 的 ClassNotFoundException
如何将 Java 9 '--permit-illegal-access' 标志传递给 Webstart 应用程序?
将Java Applet迁移到Java WebStart(JNLP)
如何在 Java WebStart (JNLP) 应用程序中获取多个 hprof 转储?