Build 如何在构建代理上配置编译jre?

Build 如何在构建代理上配置编译jre?,build,java,install4j,Build,Java,Install4j,我们的开发环境由几个构建代理组成,这些代理构建安装程序介质。今天,我们在其中一个构建代理的install4j中出现了一个编译错误。类版本与某些自定义类不匹配。我们发现构建代理上安装的jre是jre_1.6 x32和jre_1.7 x64。项目设置设置为创建最低java版本为1.7的x32安装程序介质。因此,install4j%JAVA_HOME%等的搜索算法使用jre_1.6 x32来编译代码 现在的问题是:是否可以在maven构建过程中配置编译jre?也许要将config.xml的路径从%Us

我们的开发环境由几个构建代理组成,这些代理构建安装程序介质。今天,我们在其中一个构建代理的install4j中出现了一个编译错误。类版本与某些自定义类不匹配。我们发现构建代理上安装的jre是jre_1.6 x32和jre_1.7 x64。项目设置设置为创建最低java版本为1.7的x32安装程序介质。因此,install4j%JAVA_HOME%等的搜索算法使用jre_1.6 x32来编译代码

现在的问题是:是否可以在maven构建过程中配置编译jre?也许要将config.xml的路径从%User_Home%/.install4j5修改为%INSTALL4J_Home%/config

对于我们的环境来说,最好的解决方案是将编译jre指向jre,jre将在maven构建阶段提取:流程资源,稍后将作为应用程序的捆绑jre包含在安装程序中。然后,我们可以确保应用程序使用与安装后使用的jre相同的jre进行编译。无论生成代理如何配置为x64或x32

希望这个问题是可以理解的

问候
Hardie

在常规设置->Java版本步骤中,您可以配置用于脚本编译的JDK或JRE。默认情况下,这设置为当前使用的JRE,即install4j IDE和命令行编译器运行时使用的JRE

要使编译更具确定性,请切换到已配置的JDK。只有指定的JRE名称(如JDK 1.7)将保存在项目中,实际的JRE必须在每台机器上配置,然后对所有项目全局相同

如果在无头机器上编译,请编辑$HOME/.install4j5/config.xml并将jdks元素设置为

<jdks>
  <jdk name="JDK 1.7" id="1" javaHome="path/to/java/home" 
      version="1.7.0" jreOnly="false" />
</jdks>

你好,英戈。该解决方案并没有满足我们对构建的需求。我们在maven构建过程中提取install4j zip文件,并没有将其安装到每台无头机器上,因此我们可以快速更改构建代理,而无需手动对其进行大量配置。那么,是否可以在sonatype的maven插件或命令行中配置config.xml的路径?不,在提取install4j ZIP文件后,您必须自己进行修改。