java项目如何打包
打包Java项目的常见方法
Java项目打包通常使用构建工具如Maven或Gradle,也可以手动使用jar命令。以下是几种常用方法:
使用Maven打包
在项目根目录下执行以下命令:
mvn package
打包后的文件默认生成在target目录下,包含可执行的JAR文件。
对于需要包含依赖的打包,可以在pom.xml中配置maven-assembly-plugin:
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<version>3.3.0</version>
<configuration>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
<archive>
<manifest>
<mainClass>com.example.Main</mainClass>
</manifest>
</archive>
</configuration>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
</execution>
</executions>
</plugin>
使用Gradle打包
在build.gradle中配置:
plugins {
id 'java'
}
jar {
manifest {
attributes 'Main-Class': 'com.example.Main'
}
from {
configurations.runtimeClasspath.collect { it.isDirectory() ? it : zipTree(it) }
}
}
执行以下命令生成包含依赖的JAR:
gradle build
生成的JAR文件位于build/libs目录。
手动使用jar命令打包
编译Java文件:
javac -d ./out ./src/*.java
创建JAR文件:
jar cvfe app.jar com.example.Main -C out .
打包为WAR文件(Web应用)
对于Web项目,Maven默认会生成WAR文件:
mvn package
Gradle需要应用war插件:
plugins {
id 'war'
}
打包为可执行文件
使用工具如jpackage(JDK14+):
jpackage --input target/ --name MyApp --main-jar myapp.jar
以上方法涵盖了从简单JAR到包含依赖的可执行文件的多种打包需求,开发者可根据项目类型和部署环境选择合适的方式。







