1

我在使用deploy:deploy-file快照时遇到问题,我想请教一些建议。

我有 2 个项目;1) Antbased 和 2) other Mavenbased 通过Archiva.

我在Ant项目中添加了一个目标,以便在我们迭代期间的每个成功构建上部署快照。

问题是 Maven 项目找不到它们,因为依赖项的名称有timestamp appended like so

someJar-1.0-20100407.171211-1.jar

这是 Ant 目标:

<exec executable="${maven.bin}" dir="../lib">
  <arg value="deploy:deploy-file" />
  <arg value="-DgroupId=com.my.package" /><arg value="-DartifactId=${ant.project.name}" />
  <arg value="-Dversion=${manifest.implementation.version}-SNAPSHOT" />
  <arg value="-Dpackaging=jar" />
  <arg value="-Dfile=../lib/${ant.project.name}-${manifest.implementation.version}-SNAPSHOT.jar" />
  <arg value="-Durl=http://archiva.xxx.com/archiva/repository/snapshots" />
  <arg value="-DrepositoryId=snapshots" />
</exec> 

我有一个类似的 Ant 发布目标,这很好用。

mvn deploy其他通过工作正常部署 snapshosts 的纯 Maven 项目。

有谁知道我哪里出错了?

谢谢你

更新

想通了答案,见下文。

4

1 回答 1

1

想出了答案。

如您所见,在我的 Ant 目标中,我正在部署该文件。然后我也做了同样的事情,但使用了 -tests jar。

这会在 Archiva 中生成 2 个快照,而不是通常的 1 个快照,如果您执行 mvn deploy 的话。

因此无法找到非测试依赖项,因为最新的快照是 -test jar。

很高兴知道如何解决这个问题。

请参阅在单个事务中将非基于 Maven 的模块 src 和测试 jar 部署到 Archiva

于 2010-04-09T09:37:59.393 回答