我正在开发一个 java 应用程序,我们构建了它的 32 位和 64 位版本。软件使用本机代码,因此32位和64位版本需要打包相应的库。
目前在我们的构建服务器 (jenkins) 上,我们在单个项目中构建 32 位和 64 位。这样做的原因是因为我们希望保持两个构建同步 - 基本上如果一个失败,我们不想在 32 位版本而不是 64 位版本上部署某些功能。由于底层代码库是相同的,只是库不同,我认为内部版本号也应该始终相同。
此解决方案有效,但构建时间是其两倍,因为它进行了两次构建。如果我将它们拆分为单独的项目,则无法保证 32 位和 64 位版本在构建号和构建状态方面保持同步。
听起来我真正想要的是一个有两个孩子的父版本——32 位和 64 位版本。我不确定这是否应该在构建服务器上处理,或者可能作为 maven 中的多模块项目。拥有一个多模块项目似乎并不完全正确,因为只有库不同,而不是任何代码。
有没有人处理过这种情况并可以在这里提供指导?