簡體   English   中英

Maven本地存儲庫代理外部

[英]maven local repository proxy external

我在一個組織中支持Archiva內部存儲庫,在該組織中某些構建環境無法訪問開放的Internet來獲取依賴項。 我以為可以將Archiva配置為所有外部組件(mirrorOf的鏡像設置為“ external。* ,! snapshots”)的鏡像,並使用代理進行設置,這樣,如果我的其中一個版本要求的內容不在Archiva中,它將使用代理從我用代理設置的外部源獲取依賴項。 之后,它將被緩存在Archiva中,而不必從外部獲取。

因此,我在Archiva配置中有用於代碼庫,sonatype(多個),基本Central,用於Hadoop的Cloudera等代理。 但是我找不到一種配置,可以阻止我的構建直接嘗試訪問外部資源(它們無法訪問),卻無法通過代理滿足Archiva中尚未存在的內容。

我這里缺少一些技巧配置嗎? 還是我需要切換到Artifactory或Nexus才能獲得這種功能?

您需要在每個構建環境上設置Maven設置以指向您的archiva實例。
例如在$ user.home / .m2 / settings.xml中

<mirror>
  <id>InternalMirror</id>
  <mirrorOf>*</mirrorOf>
  <name>Internal Mirror.</name>
  <url>http://archivaserver/archivaPath/</url>
</mirror>

我以前從未使用過Archiva,但是我已成功通過Nexus成功完成此操作

切換到聯系將是更可取的。

我已經附上了可用於聯系的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>F:\m2\repository</localRepository>

    <pluginGroups>
                <pluginGroup>org.codehaus.sonar</pluginGroup>
        </pluginGroups>


    <proxies>
        <proxy>
            <active>true</active>
            <protocol>http</protocol>
            <host>your-host-id</host>
            <port>8080</port>
        </proxy>
    </proxies>

    <mirrors>
    <mirror>
        <id>nexus</id>
        <mirrorOf>*,!sonar</mirrorOf>
        <url>http://nexus-repo-url/content/groups/public</url>
        <name>Nexus</name>
    </mirror>
    </mirrors>
    <profiles>
        <profile>
            <id>NexusProfile</id>
            <activation>
                <activeByDefault>true</activeByDefault>
                <jdk>1.5</jdk>
            </activation>
            <repositories>
                <repository>
                  <snapshots>
                    <enabled>true</enabled>
                  </snapshots>
                  <releases>
                    <enabled>true</enabled>
                  </releases>
                  <id>nexus</id>
                  <name>default-repos</name>
                  <url>http://nexus-repo-url/content/groups/default-repos</url>
                </repository>
                <repository>
                  <snapshots>
                    <enabled>true</enabled>
                  </snapshots>
                  <releases>
                    <enabled>true</enabled>
                  </releases>
                  <id>nexus</id>
                  <name>default-repos</name>
                  <url>http://nexus-repo-url/content/groups/default-repos</url>
                </repository>
            </repositories>
            <pluginRepositories>
                <pluginRepository>
                  <snapshots>
                    <enabled>true</enabled>
                  </snapshots>
                  <releases>
                    <enabled>true</enabled>
                  </releases>
                  <id>nexus</id>
                  <name>default-repos</name>
                  <url>http://nexus-repo-url/content/groups/default-repos</url>
                </pluginRepository>
                <pluginRepository>
                  <snapshots>
                    <enabled>true</enabled>
                  </snapshots>
                  <releases>
                    <enabled>true</enabled>
                  </releases>
                  <id>nexus</id>
                  <name>default-repos</name>
                  <url>http://nexus-repo-url/content/groups/default-repos</url>
                </pluginRepository>
            </pluginRepositories>
        </profile>
    </profiles>

    <activeProfiles>
        <activeProfile>NexusProfile</activeProfile>
    </activeProfiles>


    <servers>
        <server>
            <id>nexus</id>
            <username>anonymous</username>
            <password>password</password>
        </server>
    </servers>
</settings>

我建議您閱讀http://maven.apache.org/guides/mini/guide-mirror-settings.html來配置設置。 並且我建議您使用性能更高的Archiva 1.4版本系列。 我們目前正在重寫ui,請參閱真實示例https://archiva-repository.apache.org/archiva/index.html?request_lang=en 如果要使用自己的版本,則必須從此處下載快照: https : //builds.apache.org/view/AF/view/Archiva/job/archiva-all-maven-3.x-jdk-1.6/

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM