我有一个项目,包含一个单独的模块,和一些依赖。 我想在一个单独的目录中创建一个JAR,其中包含编译后的模块。此外,我希望在我的模块旁边有依赖项。
无论我如何扭曲IntelliJ的“构建JAR”过程,我的模块的输出都是空的(除了一个META-INF文件)。
我有一个项目,包含一个单独的模块,和一些依赖。 我想在一个单独的目录中创建一个JAR,其中包含编译后的模块。此外,我希望在我的模块旁边有依赖项。
无论我如何扭曲IntelliJ的“构建JAR”过程,我的模块的输出都是空的(除了一个META-INF文件)。
当前回答
8.1.3想法
Jar是可以的,因为在'output'目录(project/out/production//)中有编译输出
我猜,你必须在构建jar之前运行'make'
对于依赖项,只需检查“show library”并选择您想要的。
其他回答
Ant和Maven被广泛使用。我更喜欢Ant,我觉得它更轻量级,你作为开发人员更有控制权。有些人会认为这是它的缺点:-)
8.1.3想法
Jar是可以的,因为在'output'目录(project/out/production//)中有编译输出
我猜,你必须在构建jar之前运行'make'
对于依赖项,只需检查“show library”并选择您想要的。
如上所述,但我必须指出一点。 您必须勾选复选框:
包括在项目构建中
我的问题是:我使用Intellij IDEA(尝试了不同的版本)+ Gradle。 当我编译项目并构建artifacf jar时,如上面的响应所示,我收到了一个错误-“没有主清单属性…”
这个解决方案对我来说很有效(特别感谢Thilina Ashen Gamage提供的建议):
摘录-如果你使用外部库,并通过项目设置-工件-添加(+)- Jar -从有依赖关系的模块中构建项目,那么可能是因为程序错误,包含manifest文件的META-INF文件夹不包括到Jar中。为了避免它,创建空的jar文件。
项目设置-工件-添加(+)- Jar -空Jar。META-INF文件夹将被添加到资源文件夹。然后选择你的主类。你会看到以下罐子结构: 注意存在一个文件夹META-INF 然后您就可以构建项目和构件了。这个解决方案也适用于javaFX应用程序。
使用Gradle来构建你的项目,然后jar就在构建文件中。这是一个Stack Overflow链接,介绍如何用Gradle构建.jar文件。
Java项目与Gradle和构建jar文件在Intellij IDEA -如何?