Sonatype Nexus 中基于代理 SVN Google 代码的 Maven 存储库

Posted

技术标签:

【中文标题】Sonatype Nexus 中基于代理 SVN Google 代码的 Maven 存储库【英文标题】:Proxy SVN Google Code based maven repository in Sonatype Nexus 【发布时间】:2013-06-05 10:10:36 【问题描述】:

我已经为存储库缓存设置了 Sonatype Nexus。

com.googlecode.htmleasy 没有被 maven 解析。报错

未能找到 com.googlecode.htmleasy:htmleasy:jar:0.7 in http://localhost:8081/nexus/content/groups/public 被缓存在 本地存储库,直到更新才会重新尝试解析 nexus 间隔已过或强制更新 -> [Help 1]

htmleasy 是一个工件,它位于基于 google 代码的 maven repo 中。

 <repository>
      <id>htmleasy</id>
      <url>http://htmleasy-maven.googlecode.com/svn/trunk/</url>
   </repository>

但是当我根据上面的 repo 引用以下工件时,我应该怎么做

<dependency>
      <groupId>com.googlecode.htmleasy</groupId>
      <artifactId>htmleasy</artifactId>
      <version>0.7</version>
   </dependency>

由我的 maven 解决?

我的maven设置xml如下,

<?xml version="1.0" encoding="UTF-8"?>
<settings 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/settings-1.0.0.xsd">
  <mirrors>
    <mirror>
      <id>nexus</id>
      <mirrorOf>*</mirrorOf>
      <url>http://localhost:8081/nexus/content/groups/public</url>
    </mirror>
  </mirrors>
  <proxies></proxies>
  <servers></servers>
  <pluginGroups></pluginGroups>
  <profiles>
    <profile>
      <id>nexus</id>
      <!--Enable snapshots for the built in central repo to direct -->
      <!--all requests to nexus via the mirror -->
      <repositories>
        <repository>
          <id>central</id>
          <url>http://central</url>
          <releases><enabled>true</enabled></releases>
          <snapshots><enabled>true</enabled></snapshots>
        </repository>
      </repositories>
      <pluginRepositories>
        <pluginRepository>
          <id>central</id>
          <url>http://central</url>
          <releases><enabled>true</enabled></releases>
          <snapshots><enabled>true</enabled></snapshots>
        </pluginRepository>
      </pluginRepositories>
    </profile>
  </profiles>
  <activeProfiles>
    <activeProfile>nexus</activeProfile>
  </activeProfiles>
</settings>

【问题讨论】:

【参考方案1】:

Add a new proxy repository,别忘了add it to your 'public' repository group。

(如果您仍然从 maven 收到“将不会重新尝试解析”错误,请尝试使用 '-U' 调用 maven。)

【讨论】:

1) 我已经创建代理存储库并将其添加到公共组。 2) 使用 -U ( "mvn jetty:run -U" ) 调用 mvn 命令可以解决问题....!!!谢谢 !成功了!

以上是关于Sonatype Nexus 中基于代理 SVN Google 代码的 Maven 存储库的主要内容,如果未能解决你的问题,请参考以下文章

使用 Sonatype Nexus docker 代理

Sonatype Nexus3 搭建私有仓库

2019-01-04 nexus 3.x 迁移

Nexus搭建并代理AliYun镜像

Sonatype Nexus高级配置

Windows使用Nexus搭建Maven私服