1

每次我使用托管在 Github 上的 Maven 创建一个新的适当项目时,我都必须查看我自己的一个旧项目并复制 pom 文件,或者我去找一个我认为做得很好的项目并在那里复制 POM 文件。然后我必须去搜索并替换项目名称......等内容。

现在 Maven 通过原型有一个解决方案,但我还没有看到一个足够现代的解决方案:

  • 使用发布插件并部署到 SonaType Central Maven reop。
  • 连接到 Github(意味着 scm 连接和发布插件工作做正确的事)
  • 制作所有三个jar 工件(源、javadoc 和常规 jar)

我曾考虑制作一些giter8模板,但希望有人已经做过类似的事情(大多数 g8 模板都是用于sbt)。

4

3 回答 3

3

您可以使用com.jcabi:parent:pomwhich 完全满足您的需要以及更多功能。它部署到 Sonatype,定义版本的常见依赖项,预配置最流行的插件,并定义一些有用的配置文件。

这篇文章解释了更多:不要在 Maven POM 中重复你自己;使用 Jcabi-Parent

于 2013-02-14T07:44:15.750 回答
2

你可以看看Sonatype 发布的父 pom 。它旨在用作部署到oss.sonatype.org(可能会或可能不会提升到 Maven Central)的项目的父 pom。

当启用 sonatype-oss-release 配置文件时,它将确保构建源代码和 javadocs。它还包括一个<scm>pom 元素的示例。

于 2012-10-18T15:58:31.987 回答
0

事实证明,创建自己的 Maven 原型非常容易。

  1. 只需使用您喜欢使用的东西制作一个通用项目
  2. 在项目目录下运行mvn archetype:create-from-project
  3. 通常 Maven 会猜测正确的东西来制作变量,但如果不是,您只需编辑 Velocity 模板。
  4. 在本地安装你的原型mvn install
  5. 要使用您的新原型:mvn archetype:generate -DarchetypeGroupId=com.mygroup -DarchetypeArtifactId=my-archetype

现在唯一需要注意的是,我在原型系统上找不到很好的网络文档。就像它不清楚您可以为 Velocity 使用哪些变量(尽管其中大多数是显而易见的)。

http://maven.apache.org/archetype/maven-archetype-plugin/create-from-project-mojo.html

于 2012-11-22T15:59:22.590 回答