maven-antrun-pluginとinstall4jを使用して、アプリケーションのインストーラーをビルドしています。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>