我已经从一个项目中创建了一个maven原型,在这个项目的pom文件中,有一个依赖demo admin
<dependency>
<groupId>com.demo</groupId>
<artifactId>demo-admin</artifactId>
<version>${demo-admin.version}</version>
</dependency>
此依赖关系安装在本地存储库中。
但是,当我检查生成的原型文件,即archetype resources文件夹中的pom.xml文件时,依赖关系如下所示
<dependency>
<groupId>${groupId}</groupId>
<artifactId>${rootArtifactId}-admin</artifactId>
<version>${version}</version>
</dependency>
所以每次我从原型创建一个新项目,这个独立性的maven坐标都会改变。
有人有同样的问题吗?
编辑:本期可按以下步骤复制:
创建一个gav如下的项目
<groupId>com.demo</groupId>
<artifactId>abc-admin</artifactId>
<version>1.0.0</version>
创建一个gav如下的项目
<groupId>com.demo</groupId>
<artifactId>abc</artifactId>
<version>1.0.0</version>
第二个项目包含一个依赖项
<dependency>
<groupId>com.demo</groupId>
<artifactId>demo-admin</artifactId>
<version>1.0.0</version>
</dependency>
使用下面的命令从第二个项目创建原型。cd b。mvn清洁c。mvn公司archetype:create-from-project
转到“/target/generated sources/archetype/src/main/resources/archetype resources”文件夹,可以看到一个pom文件,在pom文件中,依赖关系如下所示
<dependency>
<groupId>${groupId}</groupId>
<artifactId>${rootArtifactId}-admin</artifactId>
<version>${version}</version>
</dependency>
因此,如果我基于原型创建一个新项目,当我输入不同的gav时,依赖关系也会根据输入值改变
1条答案
按热度按时间xkftehaa1#
我猜这是用占位符自动替换演示项目的groupid和artifactid。
要么给演示项目提供一些在其他任何地方都不会出现的名称,要么用正确的值替换占位符来编辑生成的原型。