安装Maven Archetype

Ale*_*lde 13 archetypes maven

我从现有项目中创建了一个Maven原型.我甚至在我的本地存储库中安装了原型并用它来创建一个新项目.一切都很完美(令人难以置信).

问题是我想分发这个原型,所以任何人都可以在他的本地机器上安装它,甚至可以部署到maven仓库以便使用它.我正在考虑分发生成的工件JAR,而不是我的项目的源,并让人们安装它,但似乎它不作为原型安装或至少在我尝试使用它时无法识别.

我使用mvn install:install-file目标来做到这一点.

这是最好的方法吗?是否可以分发此JAR文件以将其作为原型安装?JAR文件丢失了什么吗?

提前致谢.

LAF*_*ica 17

这里几点澄清:

// installs the project to your local repository (jar, archetype, etc.)
mvn install
// AND updates archetype catalog
mvn install archetype:update-local-catalog
// calls plugin archetype goal crawl
mvn archetype:crawl
Run Code Online (Sandbox Code Playgroud)

抓取通过Maven repo和CREATES目录.

如果您希望以交互方式使用原型,则需要使用完整坐标调用或将其列在目录中.

// use local catalog
mvn archetype:generate -DarchetypeCatalog=local
// full coordinate set, my example
mvn archetype:generate -DarchetypeGroupId=pl.lafk -DarchetypeArtifactId=simple-testng-quickstart -DarchetypeVersion=1.0 -DgroupId=pl.lafk -DartifactId=sample-app
Run Code Online (Sandbox Code Playgroud)

当你打电话给mvn deploy你做所有安装时,加上将包推送到远程存储库 - 如果你配置了它.

我使用的链接是Maven网站的插件:https://maven.apache.org/archetype/archetype-packaging/index.html

另外: mvn archetype:help


the*_*NOD 5

嗨,这是一个迟到的回复,但我遇到了同样的问题,我没有找到如何共享原型的明确说明。所以我希望以下内容能帮助那些和我一样挣扎的人:

  • 开发您的原型:单独或使用mvn archetype:create-from-project。互联网上有足够的说明来解释如何做到这一点。
  • 在 pom.xml 中输入 distribution-management 元素,必须在其中定义要发布/共享原型的 nexus-repository。用于连接属性等的maven/settings.xml链接是使用 id 元素而不是 url 元素创建的。
  • 使用所有选项调用“ mvn clean install ”,以便在本地 maven 存储库中安装原型
  • 调用“ mvn deploy ”,maven 将完成剩下的工作并自行更新您的远程 archetype-catalog.xml!
  • 要测试原型是否真的被识别,请调用“mvn archetype:generate -Dfilter=[your archetype artifactid]”,它应该在列表中。


noa*_*hlz 0

Maven 原型是工件,就像任何其他项目构建工件一样。您可以使用 Mavendeploy命令将它们部署到您的存储库。

有关这些主题的更多信息,请参阅创建原型指南Maven 示例Maven:完整参考。