我们在三台机器上有相同的源代码:
- 机器1:Fedora 27
- 机器2:Fedora 27
- 机器3:Windows 10
在项目中,我们有一个版本为4.4.1的gradlew
脚本。
在构建所有计算机上的gradle缓存之前,这是空的。我们正在使用命令clean build
构建。
我们发现机器2和机器3上的罐子大小相等,两个罐子都按预期工作。但是Machine 1上的jar文件比其他jar文件少4 Kbytes并且包含一些bug(当我们运行在机器1上生成的jar时,Spring不会从属性文件中读取属性)。
为什么会这样?如果源代码相同,为什么我们在1机器上得到一个有错误的jar?
此外,所有3台计算机都具有相同版本的Java和Gradle。
此外,我们在机器1上使用Windows 10创建了一个虚拟机(VirtualBox),并在虚拟机上安装了相同版本的Gradle和Java。罐子已经成功构建并且可以工作。
此外,Machine 1和Machine 2具有相同版本的Groovy和Linux内核。
所有3台机器上的硬件都不同。