java是如何打包
Java打包方法
Java项目可以通过多种方式进行打包,生成可执行的JAR文件或其他分发格式。以下是常见的打包方法:
使用Maven打包
在pom.xml中配置打包插件:
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>3.2.0</version>
<configuration>
<archive>
<manifest>
<mainClass>com.example.MainClass</mainClass>
</manifest>
</archive>
</configuration>
</plugin>
</plugins>
</build>
执行命令生成JAR文件:
mvn package
使用Gradle打包
在build.gradle中配置:
plugins {
id 'java'
}
jar {
manifest {
attributes 'Main-Class': 'com.example.MainClass'
}
}
执行命令生成JAR文件:
gradle build
手动打包

通过JDK自带的jar命令打包:
javac -d ./classes src/*.java
jar cvfe app.jar MainClass -C classes .
生成可执行JAR
确保MANIFEST.MF包含主类信息:
Main-Class: com.example.MainClass
然后打包:

jar cfm app.jar MANIFEST.MF *.class
包含依赖的打包
使用Maven Assembly插件:
<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>
</configuration>
</plugin>
生成Docker镜像
通过Dockerfile打包Java应用:
FROM openjdk:11
COPY target/app.jar /app.jar
ENTRYPOINT ["java", "-jar", "/app.jar"]
构建命令:
docker build -t java-app .






