我有一个项目,包含一个单独的模块,和一些依赖。 我想在一个单独的目录中创建一个JAR,其中包含编译后的模块。此外,我希望在我的模块旁边有依赖项。
无论我如何扭曲IntelliJ的“构建JAR”过程,我的模块的输出都是空的(除了一个META-INF文件)。
我有一个项目,包含一个单独的模块,和一些依赖。 我想在一个单独的目录中创建一个JAR,其中包含编译后的模块。此外,我希望在我的模块旁边有依赖项。
无论我如何扭曲IntelliJ的“构建JAR”过程,我的模块的输出都是空的(除了一个META-INF文件)。
当前回答
Ant和Maven被广泛使用。我更喜欢Ant,我觉得它更轻量级,你作为开发人员更有控制权。有些人会认为这是它的缺点:-)
其他回答
在Maven中,你可以使用这个插件:
<build>
<plugins>
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<configuration>
<archive>
<manifest>
<mainClass>[path you class main]</mainClass>
</manifest>
</archive>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
</configuration>
<executions>
<execution>
<id>make-assembly</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
我尝试了大部分给出的答案,但在我的情况下,“out”文件夹(其中包含jar文件)没有被创建。这就完成了任务:
Build -> Build Artifacts ->(你会看到类名)-> Build
现在,“out”文件夹被创建,jar文件在其中。
Ant和Maven被广泛使用。我更喜欢Ant,我觉得它更轻量级,你作为开发人员更有控制权。有些人会认为这是它的缺点:-)
如上所述,但我必须指出一点。 您必须勾选复选框:
包括在项目构建中
如果你在spring/mvn项目中工作,你可以使用这个命令:
mvn package -DskipTests
jar文件将保存在目标目录下。