我有一个使用Netbeans和maven构建的项目,该项目需要一些外部软件包,因此它们在pom.xml的“依赖关系”部分列出。当我构建jar时,它会下载所有依赖项,并且可以在我的计算机上正常运行。如果我将jar转移到另一台计算机上并运行它,则在找不到它的类(在本例中为org / apache / commons / codec / digest / DigestUtils)时崩溃。我想出了如何将所有依赖项打包到jar文件中,但是文件为100MB而不是40KB。分发Java程序时的一般过程是什么?我是否只包括所有依赖项并分发大文件,还是有办法自动在新计算机上下载所需的依赖项?我更喜欢一个较小的文件的原因之一是它必须在服务器上运行,因此为了进行测试,如果文件较小,我可以更快地将新版本推送到服务器,并且可以在系统的其他位置找到依赖项。
最佳答案
您可以使用appassembler插件来创建一个包含您的应用程序及其所有依赖项的zip或tar文件,以及一个命令行shell脚本来调用Java。