Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/383.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何使Gradle构建的系统环境独立?_Java_Build_Gradle - Fatal编程技术网

Java 如何使Gradle构建的系统环境独立?

Java 如何使Gradle构建的系统环境独立?,java,build,gradle,Java,Build,Gradle,我最近配置了一个Gradle构建,但结果表明它在不同的机器上工作方式不同:特别是,它确实在我的机器上构建,而不是在我同事的机器上构建。我们确定Java版本是原因,因为我使用1.7,他使用1.8。一般来说,问题是如何使Gradle构建完全独立于环境,以确保它以完全相同的方式构建,而不考虑安装的软件版本、区域设置、编码等。如何实现这一点?使用docker提供统一的开发环境。通常情况下,您会为要支持的所有环境配置指定不同的构建说明,但无法实现真正的通用构建。最接近的方法是支持多种不同的组合。继续上一条

我最近配置了一个Gradle构建,但结果表明它在不同的机器上工作方式不同:特别是,它确实在我的机器上构建,而不是在我同事的机器上构建。我们确定Java版本是原因,因为我使用1.7,他使用1.8。一般来说,问题是如何使Gradle构建完全独立于环境,以确保它以完全相同的方式构建,而不考虑安装的软件版本、区域设置、编码等。如何实现这一点?

使用docker提供统一的开发环境。通常情况下,您会为要支持的所有环境配置指定不同的构建说明,但无法实现真正的通用构建。最接近的方法是支持多种不同的组合。继续上一条评论,无法使构建完全可移植。您不会期望Java应用程序构建在CICS大型机上。您必须期望您的构建具有一些先决条件。如果您需要Java7,那么指定它。但是,只要您了解这些JDK的不同需求,就可以将Gradle构建配置为与Java 7和Java 8稍有不同的行为。我在linux上运行脚本时遇到同样的问题,创建的结构与在windows上完全不同: