Springboot項目打包如何將依賴的jar包輸出到指定目錄
場景
公司要對springboot項目依賴的jar包進行升級,但是遇到一個問題,項目打包之后,沒辦法看到他里面依賴的jar包,版本到底是不是升上去了,沒辦法看到。
下面是項目打的jar包

我們通過反編譯工具jdgui,來看一下jar包文件內容,我們發(fā)現里面根本沒有看到依賴的jar包

既然看不到依賴的jar包,那么就沒辦法確定,jar包版本是否升級成功,那應該怎么辦呢?
解決辦法
maven有一個辦法,就是可以將依賴的jar包輸出的指定的目錄。具體配置如下:
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.hidata.kafka</groupId>
<artifactId>hijob-kafka</artifactId>
<version>0.1</version>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-dependencies</artifactId>
<version>2.7.18</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<java.version>1.8</java.version>
<bboss.version>5.8.6</bboss.version>
</properties>
<dependencies>
<!-- spring boot -->
<dependency>
.....
</dependency>
</dependencies>
<build>
<resources>
<resource>
<directory>${project.basedir}/src/main/resources</directory>
<filtering>true</filtering>
<excludes>
<exclude>static/**</exclude>
</excludes>
</resource>
<resource>
<directory>${project.basedir}/src/main/resources</directory>
<filtering>false</filtering>
<includes>
<include>static/**</include>
</includes>
</resource>
</resources>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<mainClass>com.hidata.kafka.HijobKafkaApplication</mainClass>
<layout>ZIP</layout>
<includes>
<include>
<groupId>nothing</groupId>
<artifactId>nothing</artifactId>
</include>
</includes>
</configuration>
<executions>
<execution>
<goals>
<goal>repackage</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>7</source>
<target>7</target>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<executions>
<execution>
<id>copy-dependencies</id>
<phase>package</phase>
<goals>
<goal>copy-dependencies</goal>
</goals>
<configuration>
<!--target/lib是依賴jar包的輸出目錄,根據自己喜好配置-->
<outputDirectory>target/lib</outputDirectory>
<excludeTransitive>false</excludeTransitive>
<stripVersion>false</stripVersion>
<includeScope>runtime</includeScope>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project>重要的事再說一遍,其實核心就是這一句配置
<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-dependency-plugin</artifactId> <executions> <execution> <id>copy-dependencies</id> <phase>package</phase> <goals> <goal>copy-dependencies</goal> </goals> <configuration> <!--target/lib是依賴jar包的輸出目錄,根據自己喜好配置--> <outputDirectory>target/lib</outputDirectory> <excludeTransitive>false</excludeTransitive> <stripVersion>false</stripVersion> <includeScope>runtime</includeScope> </configuration> </execution> </executions> </plugin>
我們再打包一下看看效果:

我們發(fā)現target多了一個文件夾lib,其實他就是存放項目所依賴的jar包的。打開lib文件夾,發(fā)現里面全部都是jar包

這樣就可以知道,jar包的版本到底有沒有升級成功了。
到此這篇關于Springboot項目打包:將依賴的jar包輸出到指定目錄的文章就介紹到這了,更多相關Springboot項目依賴jar包內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
- SpringBoot或SpringAI對接DeepSeek大模型的詳細步驟
- SpringBoot整合DeepSeek實現AI對話功能
- 在 Spring Boot 3 中接入生成式 AI的操作方法
- 解決創(chuàng)建springboot后啟動報錯:Failed?to?bind?properties?under‘spring.datasource‘
- Springboot Logback日志多文件輸出方式(按日期和大小分割)
- Java調用ChatGPT(基于SpringBoot和Vue)實現可連續(xù)對話和流式輸出的ChatGPT API
- 在Spring Boot中使用Spark Streaming進行實時數據處理和流式計算的步驟
- SpringBoot項目實現MyBatis流式查詢的教程詳解
- 使用Spring Boot輕松實現流式AI輸出的步驟
相關文章
springboot啟動不加載bootstrap.yml文件的問題
這篇文章主要介紹了springboot啟動不加載bootstrap.yml文件的問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2021-12-12

