我正在使用带有 install4j 的 maven-antrun-plugin 为我的应用程序构建安装程序。如果 java 不在(系统)路径上,则它不起作用。由于它正在分叉一个新的 java 进程来运行任务,因此必须有一种方法可以传递环境变量,但我无法弄清楚。
Install4J 将用于EXE4J_JAVA_HOME
选择 java 安装。我想通过 antrun-plugin 将它传递给 ant。我可以想出一些骇人听闻的方法,但是我忽略了一些简单的东西。作为参考,这是我的 antrun 配置:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-antrun-plugin</artifactId>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>run</goal>
</goals>
<configuration>
<target>
<!--suppress MavenModelInspection -->
<taskdef name="install4j" classname="com.install4j.Install4JTask"
classpath="${install4j.ant.path}"/>
<install4j projectfile="itma-assembly-client-swing.install4j" buildids="62">
<variable name="verbose.version.number" value="${verbose-version-number}"/>
<variable name="media.file.prefix" value="${media-file-prefix}"/>
<variable name="main.class" value="${itma-client-swing-bootstrap-main-class}"/>
</install4j>
</target>
</configuration>
</execution>
</executions>
</plugin>