我有多模块项目。依赖关系如下:Maven如何获得artificactId的依赖关系?
<dependencies>
<dependency>
<groupId>com.gwr</groupId>
<artifactId>gwr-commons</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>com.gwr</groupId>
<artifactId>gwr-places-module</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>com.gwr</groupId>
<artifactId>gwr-devices-module</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>com.gwr</groupId>
<artifactId>gwr-events-module</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>com.gwr</groupId>
<artifactId>gwr-controls-module</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>com.gwr</groupId>
<artifactId>gwr-logs-module</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>
</dependencies>
而且,在每个模块/依赖我有一个zip文件命名为*****的 “的src/main /资源” - persistence.zip(EGC:\ GWR-日志-module \ src \ main \ resources \ logs-persistence.zip)其中*****是模块名称。我想复制这个每个模块的zip文件在其他目录下让我们说c:\ users \ user \ project。我已经定义了资源插件如下:
<plugin>
<artifactId>maven-resources-plugin</artifactId>
<executions>
<execution>
<id>copy-presubscriptionfiles</id>
<phase>validate</phase>
<goals>
<goal>copy-resources</goal>
</goals>
<configuration>
<outputDirectory>${user.home}/${dasmo.storage}/</outputDirectory>
<overwrite>true</overwrite>
<resources>
<resource>
<directory>${basedir}/../gwr-logs-module/src/main/resources</directory>
<includes>
<include>*.zip</include>
</includes>
</resource>
<resource>
<directory>${basedir}/../gwr-devices-module/src/main/resources</directory>
<includes>
<include>*.zip</include>
</includes>
</resource>
<resource>
<directory>${basedir}/../gwr-controls-module/src/main/resources</directory>
<includes>
<include>*.zip</include>
</includes>
</resource>
<resource>
<directory>${basedir}/../gwr-events-module/src/main/resources</directory>
<includes>
<include>*.zip</include>
</includes>
</resource>
</resources>
</configuration>
</execution>
</executions>
</plugin>
正如你看到的,在资源节中,我有硬编码每个模块的名称。我怎样才能避免这种情况?我们不能使用每个依赖项的“artifactId”吗?如果是,如何使用它?或者有没有其他的方式来完成这项工作?
非常感谢。 问候, Yeshwant
我不明白你的问题。 http://books.sonatype.com/mvnex-book/reference/multimodule.html – 2015-02-23 09:28:49
Dovy,你能告诉我你在我的问题中没有理解的部分:请参阅我写的代码。我必须一个接一个地写下所有模块的名称,我希望在进行资源复制时避免使用这些模块的名称: – 2015-02-23 09:43:11
我的问题是如何从我的资源插件中的“ gwr-logs-module ”中获取artifactId的值。 gwr-logs-module 取自定义的依赖关系。 –
2015-02-23 09:45:38