java 如何项目打包
Java 项目打包方法
Java 项目打包通常涉及将源代码、依赖库和资源文件整合为一个可分发的格式,常见方式包括 JAR、WAR 和 EAR。以下是具体实现方法:
使用 Maven 打包
在 pom.xml 中配置打包插件,默认生成 JAR 文件:
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>3.2.0</version>
<configuration>
<archive>
<manifest>
<addClasspath>true</addClasspath>
<mainClass>com.example.Main</mainClass>
</manifest>
</archive>
</configuration>
</plugin>
</plugins>
</build>
执行命令生成 JAR:
mvn clean package
使用 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
通过 Maven 的 maven-assembly-plugin 生成包含依赖的 fat JAR:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<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>
手动打包 JAR
通过命令行工具手动创建 JAR:
# 编译源代码
javac -d target/classes src/main/java/com/example/*.java
# 创建清单文件 MANIFEST.MF
echo "Main-Class: com.example.Main" > target/MANIFEST.MF
# 打包为 JAR
jar cvfm target/myapp.jar target/MANIFEST.MF -C target/classes .
WAR 打包(Web 项目)
对于 Web 项目,Maven 可通过指定打包类型为 WAR:
<packaging>war</packaging>
Gradle 需应用 war 插件:

plugins {
id 'war'
}
注意事项
- 确保清单文件
MANIFEST.MF中指定了正确的入口类。 - 检查依赖是否完整,避免运行时出现
ClassNotFoundException。 - 使用
java -jar命令测试生成的 JAR 文件是否可执行。






