我正在研究多平台部署。在 Perl 和 Python 等语言中总是令人沮丧的关键事情之一是部署第三方库和第二方库。
我想知道 java 构建过程是否允许将程序使用的所有非 JRE 库打包到 jar 中,以便可以将其部署到任何地方而无需安装到任何其他目录中。
我正在研究多平台部署。在 Perl 和 Python 等语言中总是令人沮丧的关键事情之一是部署第三方库和第二方库。
我想知道 java 构建过程是否允许将程序使用的所有非 JRE 库打包到 jar 中,以便可以将其部署到任何地方而无需安装到任何其他目录中。
我认为您正在寻找类似 fatjar 或 uberjar 的东西。
这是构建过程中的一个步骤,它解压缩所有依赖项并将它们打包到一个大 jar 中。
不,jar 文件不应该包含其他 jar 文件。这样做是可能的,但只能使用使一切变得更加复杂的自定义类加载器。为什么不将 jar 及其所有依赖项压缩在一起:
myApp.zip
|_bin
| |_ start.bat
| |_ start.sh
|
|_lib
|_myApp.jar
|_other.jar
|_other2.jar