如何正确地从IntelliJ构建jar?

2022-08-31 04:11:33

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

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


答案 1

下面介绍如何使用 IntelliJ 10 构建 jar http://blogs.jetbrains.com/idea/2010/08/quickly-create-jar-artifact/

File -> Project Structure -> Project Settings -> Artifacts-> 点击green plus sign -> Jar -> From modules with dependencies...

选择一个(带有方法的那个),如果你需要使jar可运行。Main Classmain()

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

提取到目标 Jar

还行

构建|构建工件|建

尝试从中提取.jar文件

项目名称 |外出 |伪像|ProjectName_jar |项目名称.jar


答案 2

这在2017年仍然是一个问题,我希望它能帮助那里的某个人!我发现在IntelliJ 2017.2下创建工作jar-s的2种可能性

1. 从 IntelliJ 创建工件:

  • 转到项目结构:

File menu

  • 创建新工件:

Create a new artifact

  • 选择主类,并确保更改清单文件夹:

enter image description here

您必须更改清单目录:

<project folder>\src\main\java 

将“java”替换为“资源”

<project folder>\src\main\resources

这是它应该是什么样子的:

correct way for new manifest

  • 然后,选择要打包在 jar 中或 jar 文件附近的依赖项

  • 要构建工件,请转到构建工件并选择“重建”。它将创建一个包含 jar 文件及其依赖项的“out”文件夹。

enter image description here

2. 使用 maven-assembly-plugin

将构建部分添加到 pom 文件

    <build>
        <plugins>
            <plugin>
                <artifactId>maven-assembly-plugin</artifactId>
                <configuration>
                    <finalName>ServiceCreate</finalName>
                    <appendAssemblyId>false</appendAssemblyId>
                    <archive>
                        <manifest>
                            <mainClass>com.svt.optimoo.App</mainClass>
                        </manifest>
                    </archive>
                    <descriptorRefs>
                        <descriptorRef>jar-with-dependencies</descriptorRef>
                    </descriptorRefs>
                </configuration>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <configuration>
                    <source>1.8</source>
                    <target>1.8</target>
                </configuration>
            </plugin>
        </plugins>
    </build>
  • 创建新的运行/调试配置:

Create a new run/debug configuration:

  • 选择应用:

Choose application

  • 填写表格
  • 在构建后添加“程序集:单个”maven 目标,最后执行

enter image description here

Final setup

  • 保存,然后运行

enter image description here

此过程将在“目标”文件夹下创建 jar 文件

JAR file location


推荐