我正在针对 Nexus 存储库管理器中托管的 Apache Maven 存储库中的各种 Lucene 和 Solr Maven Artifact 进行构建。这些 Artifact 是 4.0-SNAPSHOT
版本,每天更新,定期删除旧 Artifact 。
我想知道如何将 Artifact 与特定日期 Hook ,所以每当 Maven 客户端请求 solr-core 4.0-SNAPSHOT
时,即使有更新的版本,它也会获得相同的版本一个上游。
我还想知道如何显式更新到最新的 4.0-SNAPSHOT
,但仍保留所有已下载的先前版本。
具体来说,“Apache Snapshots”存储库是安装 Nexus 时默认设置的存储库。
最佳答案
将快照部署到存储库服务器时,每个新部署实际上都部署为带有时间戳的版本,并附加了迭代器编号。如果您想使用特定版本,您只需使用快照的时间戳版本而不是 -SNAPSHOT。
您可以将此 Artifact 用作
<groupId>org.apache.maven.artifact</groupId>
<artifactId>maven-artifact</artifactId>
<version>3.0-alpha-2-SNAPSHOT</version>
每次部署新快照时都会更改它,或者您可以使用
<groupId>org.apache.maven.artifact</groupId>
<artifactId>maven-artifact</artifactId>
<version>3.0-alpha-2-20090214.020928-1</version>
这将保持不变。但请记住,快照存储库本质上不是静态的,这些 Artifact 可能会完全消失。仅当您使用可以控制的内部存储库服务器时才这样做,从而确保这些快照不会在您身上消失。
另一种方法是实际剪切一个版本并使用它..
关于java - 您如何在 Nexus 存储库管理器中 Hook Maven Artifact 的版本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10426640/