1
我已經將Nexus設置爲本地Maven資源庫,並根據Guide更新了settings.xml。如何使本地Nexus資源庫成爲更多公共代理的代理
如果我的依賴關係可以從知名的公共存儲庫MavenCentral中找到,它的工作效果非常好。
但是,它確實不工作如果我的依賴需要從一個不那麼知名的存儲庫下載(如果我不希望在我的項目pom.xml中定義的任何資源庫),如https://clojars.org/repo。
如何配置Nexus或Maven來解決我的問題?
我的Maven的settings.xml
<?xml version="1.0" encoding="UTF-8"?>
<settings>
<pluginGroups>
</pluginGroups>
<proxies>
</proxies>
<servers>
</servers>
<mirrors>
<mirror>
<id>nexus</id>
<mirrorOf>*</mirrorOf>
<url>http://localhost:8081/nexus/content/groups/public</url>
</mirror>
</mirrors>
<profiles>
<profile>
<id>nexus</id>
<repositories>
<repository>
<id>clojars</id>
<name>Clojars repository</name>
<url>https://clojars.org/repo</url>
</repository>
</repositories>
</profile>
</profiles>
<activeProfiles>
<activeProfile>nexus</activeProfile>
</activeProfiles>
</settings>
而且我的pom.xml:
<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/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.mycompany.app</groupId>
<artifactId>my-app</artifactId>
<packaging>jar</packaging>
<version>1.0-SNAPSHOT</version>
<name>my-app</name>
<url>http://maven.apache.org</url>
<dependencies>
<dependency>
<groupId>com.flipkart.zjsonpatch</groupId>
<artifactId>zjsonpatch</artifactId>
<version>0.2.1</version>
</dependency>
</dependencies>
<repositories>
</repositories>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.3</version>
<configuration>
<compilerVersion>1.8</compilerVersion>
<source>1.8</source>
<target>1.8</target>
<!-- prevents endPosTable exception for maven compile -->
<useIncrementalCompilation>false</useIncrementalCompilation>
</configuration>
</plugin>
</plugins>
</build>
</project>
你有沒有嘗試添加外部回購的配置文件/資料/庫組? – MadProgrammer
是的,請參閱我的完整settings.xml和pom.xml。我沒有按照上面的例子下載zjsonpatch。 –