创建Java Maven项目的可执行JAR文件有多种方法,这些方法适用于任何Java项目,包括Spring和Spring Boot项目。以下是六种创建可执行JAR文件的方法,并附带详细代码介绍:
方法一:使用Spring Boot Maven插件(适用于Spring Boot项目)
对于Spring Boot项目,最简单直接的方法是使用spring-boot-maven-plugin
。
pom.xml配置
< build>
< plugins>
< plugin>
< groupId> org.springframework.boot</ groupId>
< artifactId> spring-boot-maven-plugin</ artifactId>
</ plugin>
</ plugins>
</ build>
执行命令
mvn clean package
执行完毕后,在target
目录下将生成一个可执行JAR文件。
方法二:使用Maven Assembly插件
pom.xml配置
< build>
< plugins>
< plugin>
< artifactId> maven-assembly-plugin</ artifactId>
< version> 3.3.0</ version>
< configuration>
< archive>
< manifest>
< mainClass> com.yourpackage.YourMainClass</ 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>
执行命令
mvn clean package
这将在target
目录下生成一个包含所有依赖的JAR文件。
方法三:使用Maven Shade插件
pom.xml配置
< build>
< plugins>
< plugin>
< groupId> org.apache.maven.plugins</ groupId>
< artifactId> maven-shade-plugin</ artifactId>
< version> 3.2.4</ version>
< executions>
< execution>
< phase> package</ phase>
< goals>
< goal> shade</ goal>
</ goals>
< configuration>
< transformers>
< transformer implementation = " org.apache.maven.plugins.shade.resource.ManifestResourceTransformer" >
< mainClass> com.yourpackage.YourMainClass</ mainClass>
</ transformer>
</ transformers>
</ configuration>
</ execution>
</ executions>
</ plugin>
</ plugins>
</ build>
执行命令
mvn clean package
这将创建一个包含所有依赖并设置正确Manifest的JAR文件。
方法四:使用Maven Jar插件结合Maven Dependency插件
这种方法涉及多个步骤和配置,首先使用Maven Dependency插件复制所有依赖项到一个目录,然后使用Maven Jar插件创建一个包含这些依赖和正确Manifest的JAR。
注意 :由于这种方法涉及多个步骤和复杂的配置,不推荐作为首选方法。
方法五:手动设置Manifest文件
这种方法通常与其他插件结合使用,通过在构建过程中插入步骤来手动设置Manifest文件。
注意 :手动设置Manifest文件需要深入了解JAR结构和Maven构建生命周期,因此不推荐作为通用解决方案。
方法六:结合使用多种插件
在某些复杂情况下,可能需要结合使用多种插件来实现特定的需求,例如同时处理依赖项和设置Manifest文件。
注意 :这种方法需要较高的Maven配置经验和项目理解,通常只适用于特定场景。
通用注意事项:
确保在pom.xml
中正确设置<packaging>jar</packaging>
。 确保你的主类(包含public static void main(String[] args)
方法的类)具有正确的包名和类名,并在Manifest中正确设置。 测试生成的可执行JAR以确保它在没有Maven环境的情况下也能正常运行。
由于代码示例的复杂性以及可能的项目特定需求,这里无法提供所有方法的完整代码示例。每个项目都有其独特的需求和配置,因此建议根据项目的实际情况选择最适合的方法,并参考Maven官方文档和相关插件的文档进行配置。加粗样式