Maven 3 Sonatype Nexus、maven.oracle.com和不存在的工件

Maven 3 Sonatype Nexus、maven.oracle.com和不存在的工件,maven-3,nexus,Maven 3,Nexus,我们正在使用Sonatype Nexus代理maven存储库。最近,它未能解决一些已经存在了相当长一段时间并且仍然存在的工件。 在日志中,我可以找到以下消息: 2016-11-01 13:56:55,914+0100 INFO [qtp1990129127-84] ciserver org.sonatype.nexus.proxy.repository.validator.DefaultFileTypeValidatorHub - File item Oracle:/org/apache/ws

我们正在使用Sonatype Nexus代理maven存储库。最近,它未能解决一些已经存在了相当长一段时间并且仍然存在的工件。 在日志中,我可以找到以下消息:

2016-11-01 13:56:55,914+0100 INFO  [qtp1990129127-84] ciserver org.sonatype.nexus.proxy.repository.validator.DefaultFileTypeValidatorHub - File item Oracle:/org/apache/ws/jaxme/maven-jaxme-plugin/maven-metadata.xml evaluated as INVALID during file type validation (validator=maven)
2016-11-01 13:56:55,916+0100 INFO  [qtp1990129127-84] ciserver org.sonatype.nexus.proxy.maven.maven2.M2Repository - Proxied item Oracle:/org/apache/ws/jaxme/maven-jaxme-plugin/maven-metadata.xml evaluated as INVALID during content validation (validator=filetypevalidator, sourceUrl=https://maven.oracle.com/org/apache/ws/jaxme/maven-jaxme-plugin/maven-metadata.xml)
2016-11-01 13:57:40,761+0100 INFO  [qtp1990129127-88] ciserver org.sonatype.nexus.proxy.repository.validator.DefaultFileTypeValidatorHub - File item Oracle:/com/oracle/weblogic/weblogic-server-pom/maven-metadata.xml evaluated as INVALID during file type validation (validator=maven)
2016-11-01 13:57:40,762+0100 INFO  [qtp1990129127-88] ciserver org.sonatype.nexus.proxy.maven.maven2.M2Repository - Proxied item Oracle:/com/oracle/weblogic/weblogic-server-pom/maven-metadata.xml evaluated as INVALID during content validation (validator=filetypevalidator, sourceUrl=https://maven.oracle.com/com/oracle/weblogic/weblogic-server-pom/maven-metadata.xml)
虽然maven.oracle.com上不存在maven jaxme插件,但它在代理存储库中仍然有一些(损坏的)元数据。删除这些帮助,直到再次请求工件。 另一方面,工件weblogic服务器pom onm存在于maven.oracle.com上,但一旦这些消息出现在日志中,代理就不再提供服务。这有助于清除缓存,但只有在再次请求maven jaxme插件之前

我已经创建了一个nexus.properties文件来包含如下所述的设置。但这对我来说没有任何改变

当使用WebBrowser访问日志中的第一个URL时,如果登录,我会得到404。看起来不错。但在此之前,重定向(301)可能存在问题


如何避免让不存在的工件破坏代理存储库的元数据?

我无法复制您在使用Nexus repository Manager OSS 2.14.1-01代理maven.oracle.com时遇到的问题。这似乎可以很好地解决和下载下面的两个测试工件

就您看到的日志消息而言,我建议您在Nexus上执行以下操作:

1) 在Nexus实例中的Oracle Maven代理存储库上禁用
文件内容验证

2) 右键单击Oracle存储库并选择过期缓存,以便从Oracle重新下载工件

3) 在客户端,使用
mvn-U
强制Maven检查Nexus的依赖关系

测试工件:

<!-- Found in maven.oracle.com. -->
<dependency>
    <groupId>com.oracle.weblogic</groupId>
    <artifactId>wls-api</artifactId>
    <version>12.1.3-0-0</version>
</dependency>

<!-- Found in Maven Central. -->
<dependency>
    <groupId>org.apache.ws.jaxme</groupId>
    <artifactId>maven-jaxme-plugin</artifactId>
    <version>1.0.3</version>
</dependency>

com.oracle.weblogic

最近,Sonatype Nexus似乎完全无法使用maven.oracle.com。它甚至可以自动阻止它。还有人可以用吗?谢谢你的回答,ck1。不幸的是,我们已经尝试了您描述的步骤,但没有任何帮助。但有趣的是,你自己没有这个问题。也许这与我们公司的网络代理有关。即使答案不是一个解决方案,我也会因为试图复制它而奖励奖金。