在试图找到解决方案2小时后,我完全迷失了。
对于我的项目,我需要使用enunciate(http://enunciate.codehaus.org/)来生成应用程序的文档' S RESTFul api。使用1.28版本的maven-enunciate-plugin之前工作得非常好,但突然我在插件中遇到了一个NullPointerException,同时执行maven目标为enunciate(但是这个异常是另一个要整理的故事..)
无论如何,我看到1.29有更新,所以我想我试一试。
在maven构建过程中发出的正常配置基本上是这样的:
<plugin>
<groupId>org.codehaus.enunciate</groupId>
<artifactId>maven-enunciate-plugin</artifactId>
<version>1.29</version>
<executions>
<execution>
<goals>
<goal>docs</goal>
</goals>
<configuration>
<docsDir>${project.build.directory}/docs</docsDir>
<configFile>enunciate.xml</configFile>
</configuration>
</execution>
</executions>
</plugin>
可悲的是,1.29现在似乎不在maven central repo中,但是添加了一个手动依赖和存储库,如下所示:
<repositories>
<repository>
<id>opencast-public</id>
<url>http://repository.opencastproject.org/nexus/content/repositories/public/</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>org.codehaus.enunciate</groupId>
<artifactId>maven-enunciate-plugin</artifactId>
<version>1.29</version>
<scope>compile</scope>
</dependency>
</dependencies>
实际上将1.29的下载发送到我当地的m2-repo(我可以看到所有文件......)。 无论如何,只要我尝试使用上面提到的插件,maven就不会正确执行但退出:
插件org.codehaus.enunciate:maven-enunciate-plugin:1.29或其中一个依赖项无法解析:无法读取org.codehaus.enunciate的工件描述符:maven-enunciate-plugin:jar:1.29:失败找到org.codehaus.enunciate:maven-enunciate-plugin:pom:http://repo.maven.apache.org/maven2中的1.29被缓存在本地存储库中,在中心的更新间隔过去或强制更新之前,不会重新尝试解析 - &gt; [帮助1]
为什么maven没有使用正确下载的依赖?
任何帮助都非常感激,因为我已经浪费了很多时间来解决这个问题。
答案 0 :(得分:3)
我自己也碰到了这个。您需要确保在pluginRepositories块中添加存储库而不是存储库块。
<pluginRepositories>
<pluginRepository>
<id>opencast-public</id>
<url>http://repository.opencastproject.org/nexus/content/repositories/public/</url>
</pluginRepository>
</pluginRepositories>