我有一个作为WebStart应用程序分发的应用程序。到目前为止,该应用程序已作为常规的NetBeans项目进行管理,因此NetBeans负责生成WebStart应用程序文件。
但是,我已经决定现在要为此项目使用Maven。因此,我还将使用Maven生成WebStart应用程序文件。更具体地说,我将使用“ webstart-maven-plugin”来解决这个问题。
但是,default 'webstart-maven-plugin' JNLP template中有几个变量我无法弄清楚。这些变量是$ jnlpspec和$ j2seVersion。在哪里设置这些变量?现在,使用的值不能反映项目设置,我想知道它们是否以某种方式进行了硬编码?
$ jnlpspec
<?xml version="1.0" encoding="$encoding"?>
<jnlp
spec="$jnlpspec"
codebase="$jnlpCodebase"
href="$outputFile">
$ j2seVersion
<resources>
<j2se version="$j2seVersion"/>
最佳答案
我自己弄清楚了这个。我需要将这些变量添加到标签中,因此pom.xml上的插件配置如下所示:
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>webstart-maven-plugin</artifactId>
<version>1.0-beta-3</version>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>jnlp</goal>
</goals>
</execution>
</executions>
<configuration>
<verbose>true</verbose>
<codebase>[URL]</codebase>
<libPath>lib</libPath>
<unsignAlreadySignedJars>true</unsignAlreadySignedJars>
<jnlp>
<mainClass>Main</mainClass>
<spec>7.0</spec>
<j2seVersion>1.7</j2seVersion>
<inputTemplateResourcePath> ${project.basedir}/src/main/jnlp</inputTemplateResourcePath>
<inputTemplate>default-jnlp-template.vm</inputTemplate>
<offlineAllowed>false</offlineAllowed>
</jnlp>
<sign>
<keystore>${project.basedir}/keystore</keystore>
<keypass>password</keypass>
<storepass>password</storepass>
<alias>[ALIAS]</alias>
<dnameCn>[COMMON NAME]</dnameCn>
<dnameOu>[ORG. UNIT]</dnameOu>
<dnameO>[COMPANY]</dnameO>
<dnameL>[CITY]</dnameL>
<dnameSt>[STATE]</dnameSt>
<dnameC>[COUNTRY]</dnameC>
<verify>true</verify>
<keystoreConfig>
<delete>true</delete>
<gen>true</gen>
</keystoreConfig>
</sign>
</configuration>
</plugin>