为我们的团队生成应用程序模板而开发的自定义Maven Archetype不被Nexus 1.9.2识别为有效的原型 .
运行命令 mvn clean deploy
在本地正确安装原型(即更新本地〜/ .m2 / archetype-catalog.xml),将其上传到指定的Nexus存储库,但不更新相应的Nexus archetype-catalog.xml .
开发原型的groupId是 fielden
. 运行 mvn archetype:generate -Dfilter=fielden:
仅显示本地部署的人工制品 .
由于原型的SNAPHOT版本,它将按照 distributionManagement
POM设置中的指定部署到Snapshot Nexus存储库(可以通过Nexus Web界面和手动检查服务器上的文件来观察部署到Nexus的相应人工制品) . 但是,运行 mvn archetype:generate -Dfilter=fielden: -DarchetypeCatalog=Snapshots
显示没有可供选择的人工制品 .
一些其他信息:
-
客户端和服务器上的Maven版本是2.2.1 .
-
原型项目的POM包含有效的包装值:
<packaging>maven-archetype</packaging>
. -
生成的jar预期用于Maven Archetype结构(即目录
archetype-resources
和META-INF
) . -
Nexus:核心插件:Maven Archetype目录存在于插件控制台中,状态为已激活 .
-
这是
mvn clean deploy
命令输出的尾部,可能是相关的:
[INFO] [install:install {execution:default-install}]
[INFO]将/home/oles/workspace-template/tg-app-archetype/target/tg-application-archetype-1.0-SNAPSHOT.jar安装到/home/oles/.m2/repository/fielden/tg-application-archetype /1.0-SNAPSHOT/tg-application-archetype-1.0-SNAPSHOT.jar
[INFO] [archetype:update-local-catalog {execution:default-update-local-catalog}]
[INFO] [deploy:deploy {execution:default-deploy}]
[INFO]从快照中检索上一个内部版本号上传:http://server-name/nexus/content/repositories/snapshots/fielden/tg-application-archetype/1.0-SNAPSHOT/tg-application-archetype-1.0-20120117.140536-2.jar 1358K已上传(tg-application-archetype-1.0-20120117.140536-2.jar)
[INFO]从快照中检索以前的元数据
[INFO]上传存储库元数据:'artifact fielden:tg-application-archetype'
[INFO]上传tg-application-archetype 1.0-20120117.140536-2的项目信息
[INFO]从快照中检索以前的元数据
[INFO]上传存储库元数据:'snapshot fielden:tg-application-archetype:1.0-SNAPSHOT'
[INFO] ----------------------------------------------- -------------------------
[信息] Build 成功
[INFO] ----------------------------------------------- -------------------------
[INFO]总时间:11秒
[INFO]完成时间:2012年1月17日星期二16:05:39
[INFO]最终记忆:32M / 294M
[INFO] ----------------------------------------------- -------------------------
我已经审查了类似的问题,并寻找可行的解决方案无济于事 . 非常感谢任何可能有助于解决上述原型部署问题的帮助 .
1 回答
是的,这有点旧,但可能与a problem of mine有关:
希望这有帮助 .