我有一个项目,包含一个单独的模块,和一些依赖。 我想在一个单独的目录中创建一个JAR,其中包含编译后的模块。此外,我希望在我的模块旁边有依赖项。

无论我如何扭曲IntelliJ的“构建JAR”过程,我的模块的输出都是空的(除了一个META-INF文件)。


当前回答

如果你试图用kotlin构建一个jar,你需要创建一个src/main/java文件夹,并使用这个文件夹作为META-INF文件夹的位置。

其他回答

如果您在项目中使用第三方库,或者在创建MANIFEST时遇到问题。MF文件,在运行使用

File > Project Structure > Artifacts > '+' > JAR > From modules with dependencies > .....

上述方法。

相反,我建议您创建一个空JAR,并手动将所有其他元素添加到输出根中。关于这种方法的一篇精彩的博客文章可以在这里找到:http://karthicraghupathi.com/2016/07/10/creating-an-executable-jar-in-intellij-idea/我尝试了上面提到的步骤,一切都很顺利!

这可能有点晚,但我设法解决它的方式-> 用winrar打开并删除ECLIPSEF。RSA和ECLIPSEF。SF在META-INF文件夹中,并且在MANIFEST.MF中放置“Main-class: main_class_name”(没有“.class”)。确保你在最后一行之后按了两次“Enter”,否则它将不起作用。

以下是IntelliJ IDEA 2018.3 Help的官方解答。我试过了,成功了。

要从模块构建JAR文件; 在主菜单上,选择Build | Build Artifact。 从下拉列表中,选择JAR类型的所需工件。 该列表显示为当前项目配置的所有工件。要构建所有已配置的构件,请选择Build all 构件的选择。

使用

mvn clean package spring-boot:repackage

在IntelliJ终端中输入以上命令。它生成一个带有Executable Jar的目标文件。

下面是如何使用IntelliJ 10 http://blogs.jetbrains.com/idea/2010/08/quickly-create-jar-artifact/构建一个罐子

文件->项目结构->项目设置->工件->点击绿色加号-> Jar ->从模块依赖…

如果您需要使jar可运行,请选择一个主类(带有Main()方法的类)。

上面设置了“骨架”,即罐子将保存到的位置。要实际构建并保存它,请执行以下操作:

提取到目标Jar

OK

构建|构建Artifact |构建

尝试从。jar文件中提取

ProjectName | out | artifacts | ProjectName_jar | ProjectName.jar