在 jar 中包含外部库 jar 到 mac .app 转换

Include external library jars in jar to mac .app conversion

如果这个问题放错了,我很抱歉,但考虑到它是关于罐子的,Java我认为它可能是最接近我的主题的。

我有一个我制作的 Java 程序,我打算为 Mac 和 Windows 分发这个程序。为此 Windows 我使用了 Launch4j,它可以正常工作。现在的问题是,当我尝试将 jar 转换为 Mac 的 .app 时,它确实有效,应用程序只是打开然后立即关闭。我想这是因为当使用 Appmaker 转换为 Mac .app 时,它不包括我用于该程序的外部库。因此,我现在想知道如何将外部库添加到 .app 文件中,就像我在 .exe 上所做的那样,我刚刚将包含所有外部库 jar 的 .lib 文件夹添加到 .exe 所在的文件夹中在。 我尝试将 .lib 文件夹添加到为 .app 文件创建的内容文件夹中,但这不起作用,我还尝试将它添加到 .app 文件中的 ressource 文件夹中。

我发现自己的一个选择是将所有外部库和实际程序 .jar 文件合并为一个。这看起来非常困难,而且我真的不需要它只是一个组合的 .jar,如果它可以以另一种方式包含在内的话。

不确定 Appmaker,但可以做一些类似 uber jar 的事情,即包含所有 类 的单个 jar,基本上将所有 jar 解压缩到一个 signle 文件夹,然后再次将它们打包。

不确定您使用什么来构建,但 Maven 有一个 maven shade plugin 可以做到这一点。