SpringBoot 添加本地 jar 文件


前言

有時候我們在項目中,會用到一些本地 jar 包文件,比如隔壁公司自己打包的;

此時無法從maven遠程倉庫拉取;

那么我們可以考慮把 jar 文件安裝到本地 maven 庫中,然后再添加依賴。

步驟

1. 添加 jar 文件到項目中

在 resources 目錄中創建一個 lib 目錄,將本地 jar 放進去,如下所示的 demo.jar

image-20210926215633667

2. 安裝 jar 包到 maven 本地倉庫

這里我們可以利用 maven-install-plugin 插件來安裝, pom.xml如下:

	<build>
		<plugins>
			<plugin>
				<groupId>org.springframework.boot</groupId>
				<artifactId>spring-boot-maven-plugin</artifactId>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-install-plugin</artifactId>
				<version>2.5.2</version>
				<executions>
					<execution>
						<id>install-demo-jar</id>
          	<!-- 階段:設定在 mvn clean 時執行安裝,如果設定為 validate,那么就是在 mvn validate 時才安裝 -->
						<phase>clean</phase>
						<configuration>
              <!-- 路徑:這就是剛才添加的 jar 路徑 -->
							<file>${project.basedir}/src/main/resources/lib/demo.jar</file>
							<!-- 屬性:下面的這三個屬性,就是后面我們添加依賴時的值 -->
              <groupId>com.javalover</groupId>
							<artifactId>demo</artifactId>
							<version>1.0</version>
							<packaging>jar</packaging>
							<generatePom>true</generatePom>
						</configuration>
						<goals>
              <!-- 目標:安裝外部的 jar 文件到 maven 本地倉庫 -->
							<goal>install-file</goal>
						</goals>
					</execution>
				</executions>
			</plugin>
		</plugins>
	</build>

運行mvn clean后,會打印如下日志:

[INFO] --------------------------< com.example:demo >--------------------------
[INFO] Building demo 0.0.1-SNAPSHOT
[INFO] --------------------------------[ jar ]---------------------------------
[INFO] 
[INFO] --- maven-clean-plugin:3.1.0:clean (default-clean) @ demo ---
[INFO] 
[INFO] --- maven-install-plugin:2.5.2:install-file (install-demo-jar) @ demo ---
[INFO] pom.xml not found in demo.jar
[INFO] Installing /Users/jalon/Project/SpringBootProject/demo/src/main/resources/lib/demo.jar to /Users/jalon/.m2/repository/com/javalover/demo/1.0/demo-1.0.jar
[INFO] Installing /var/folders/t6/99ks0lsn0fx2j6kt4n46f_rh0000gn/T/mvninstall6930618999486285918.pom to /Users/jalon/.m2/repository/com/javalover/demo/1.0/demo-1.0.pom
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  1.316 s
[INFO] Finished at: 2021-09-26T22:12:47+08:00
[INFO] ------------------------------------------------------------------------

重點是這一行:

[INFO] Installing /Users/jalon/Project/SpringBootProject/demo/src/main/resources/lib/demo.jar to /Users/jalon/.m2/repository/com/javalover/demo/1.0/demo-1.0.jar`

可以看到,將我們本地的 demo.jar 安裝到了 maven 本地倉庫中

3. 添加依賴

		<dependency>
			<groupId>com.javalover</groupId>
			<artifactId>demo</artifactId>
			<version>1.0</version>
		</dependency>

此時程序就可以正常使用 demo.jar 包了,而且 maven 打包也會把 demo.jar 打包進去

參考

Apache Maven Install Plugin – Introduction

maven插件maven-install-plugin - Mars.wang - 博客園 (cnblogs.com)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM