2012-11-05 46 views
0

后,我写了一个插件,它在安装到本地仓库我运行命令:插件没有被发现我安装在本地回购

mvn install 

插件成功添加到我的本地Maven仓库但是当我运行:

com.tools:generate:0.0.1-SNAPSHOT:generatepom 

我收到的错误:

插件com.tools:generate:0.0.1-SNAPSHOT或它的一个依赖无法解析 :无法读取工件描述符 com.tools:generate:jar:0.0.1-SNAPSHOT:未找到 com.tools:generate:pom:0.0.1-SNAPSHOT in https://nexus.mydomain.com:8181/prod/content/groups/level0/已被缓存 在本地仓库,分辨率将不会被重新尝试,直到nexuspro-0级的 更新间隔已过或更新被迫 - > [说明1]

这似乎是寻找在Nexus插件甚至虽然插件是本地安装的。我如何配置maven以在本地存储库中运行插件?

这里是构建&开始的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/xsd/maven-4.0.0.xsd"> 
    <modelVersion>4.0.0</modelVersion> 
    <groupId>com.tools</groupId> 
    <artifactId>generate</artifactId> 
    <packaging>maven-plugin</packaging> 
    <version>0.0.1-SNAPSHOT</version> 

    <build> 
     <plugins> 
      <plugin> 
       <groupId>com.tools</groupId> 
       <artifactId>generate</artifactId> 
       <version>0.0.1-SNAPSHOT</version> 
       <configuration> 
        <repositoryUri>http://repository.sonatype.org/service/local/lucene/search?sha1=</repositoryUri>     
       </configuration> 
      </plugin> 
     </plugins> 
    </build> 

回答

1

最有可能你的插件的POM包含不同的标识(的groupId,artifactId的版本)。

另外,请确保您在那里指定了maven-plugin。

如果不是这样,请提供插件的pom摘录或其构建日志摘录(“正在...”部分)。

你可以阅读关于开发插件here

+0

谢谢,我为这个问题增加了更多信息。当我更改POM组和Artifcat ID以匹配插件组和工件ID时,我可以运行该插件。因此,运行插件使用pom本身的工件和组标识,而不是在插件部分中配置的组和工件标识。 –

+0

uff这不是方法 - 插件项目不能用它自己来构建 - 这就是你的pom.xml试图做的事情......尝试用空的本地存储库构建它,它不能通过。您需要完全删除/ project/build/plugins/plugin [artifactId ='generate']部分;然后'mvn install',然后'cd别处'并尝试你的调用命令 –

0

我会建议转向你的方法,并将插件部署到远程存储库。

如果不是这样,它应该可以正常工作。您可能会遇到Maven存储库元数据的问题。我会尝试运行

mvn -U com.tools:generate:0.0.1-SNAPSHOT:generatepom 

强制更新作为下一步。

相关问题