java 将依赖打包进lib,SpringBoot+Maven打可运行的JAR包(将lib包单独放在jar外面)
时间: 2024-02-03 18:02:28 浏览: 148
好的,针对你的问题,我可以给你提供以下步骤:
1. 在 pom.xml 文件中,添加以下插件:
```xml
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<version>${spring-boot.version}</version>
<executions>
<execution>
<goals>
<goal>repackage</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
```
2. 在 pom.xml 文件中,添加以下配置:
```xml
<build>
<resources>
<resource>
<directory>src/main/resources</directory>
<filtering>true</filtering>
<includes>
<include>**/*.yml</include>
<include>**/*.properties</include>
<include>**/*.xml</include>
</includes>
</resource>
</resources>
<finalName>${project.artifactId}</finalName>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>3.1.1</version>
<configuration>
<archive>
<manifest>
<addClasspath>true</addClasspath>
<classpathPrefix>lib/</classpathPrefix>
<mainClass>com.example.Application</mainClass>
</manifest>
</archive>
</configuration>
</plugin>
</plugins>
</build>
```
3. 在 pom.xml 文件中,添加以下依赖项:
```xml
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
<version>${spring-boot.version}</version>
</dependency>
```
4. 在 pom.xml 文件中,添加以下插件:
```xml
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<version>3.1.1</version>
<executions>
<execution>
<id>copy-dependencies</id>
<phase>package</phase>
<goals>
<goal>copy-dependencies</goal>
</goals>
<configuration>
<outputDirectory>${project.build.directory}/lib</outputDirectory>
</configuration>
</execution>
</executions>
</plugin>
```
5. 执行 mvn package 命令,生成可执行的 JAR 包。JAR 包以项目名称命名,位于 target 目录下。lib 目录也位于 target 目录下,其中包含项目依赖的所有 JAR 包。
注意:如果你使用的是其他的构建工具,如 Gradle,那么你需要将以上的配置进行相应的修改。
阅读全文