【Maven】Maven離線專案爬坑筆記
阿新 • • 發佈:2022-02-10
一、背景
- 筆記本不能聯網際網路。
- 區域網私服也暫時不能用。
由以上原因,將筆記本上的Maven
設定為離線模式。使用STS
將專案匯入之後,專案排錯如下。
二、錯誤以及解決方法
1、設定Maven
為離線模式。
1)Settings.xml配置如下:
<?xml version="1.0" encoding="UTF-8"?> <settings xmlns="http://maven.apache.org/SETTINGS/1.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd"> <localRepository>D:\mvn-repo\repository</localRepository> <pluginGroups></pluginGroups> <proxies></proxies> <servers></servers> <mirrors> <mirror> <id>center</id> <name>*</name> <mirrorOf>central</mirrorOf> <url>file://D:\mvn-repo\repository</url> </mirror> </mirrors> <offline>true</offline> <profiles> <profile> <id>jdk8</id> <activation> <jdk>1.8</jdk> </activation> <properties> <maven.compiler.source>1.8</maven.compiler.source> <maven.compiler.target>1.8</maven.compiler.target> <maven.compiler.compilerversion>1.8</maven.compiler.compilerversion> </properties> </profile> </profiles> <activeProfiles> <activeProfile>jdk8</activeProfile> <activeProfile>nexus</activeProfile> </activeProfiles> </settings>
2)Eclipse maven設定
- Offline✔
- Download Artifact Sources 去掉勾,否則一直下載原始碼。
3)刪除倉庫中的_remote.repositories
檔案,否則還是回到遠端倉庫去找
# windows
for /r %i in (_remote.repositories) do del %i
2、Maven傳遞依賴無法引入
專案中maven
依賴傳遞中依賴包無法引入。例如:專案引入A.jar,A.jar依賴B.jar,但是B.jar不能正常引入專案。
問題原因以及解決方法
排查發現造成此問題原因:maven倉庫中,在A.jar同級目錄中的A.pom檔案編寫有問題。
解決方法:將jar解壓,在META-INF\maven
找到pom.xml檔案,將內容覆蓋到A.pom檔案中就能解決。