在artifactory中为jar设置别名

时间:2017-03-14 11:15:56

标签: java gradle build artifactory

我有一个gradle项目,其中jar被构建并推送到神器。我总是希望每个构建/新工件都被称为最新的,可以在外部使用。我如何通过gradle实现它?我可以设置最新的'工件的别名,所以在任何时候我的最新标签都会指向最新的jar,可以作为依赖添加?

例如:abc-1.0-latest.jar应始终向我提取最新版本,而不管我在内部运行的构建数量。

3 个答案:

答案 0 :(得分:1)

嗯 - 这可能是一件很奇怪的事情?

因此,您希望使用相同的版本控制多次发布工件,但具有不同的签名?那是;工件/** * @var MyVendor\MyExt\Domain\Repository\UserRepository * @inject */ $protected $userRepository; public function getOnlineUsersAction() { $users = $this->userRepository->findAll(); // todo } 可以演变,但版本控制保持不变?不知道这是不是一个好习惯。

无论如何,为什么不查看maven / gradle作品的版本?可能你可以添加这样的东西来总是获取abc-1.0库的最新工件:

的Maven:

abc

摇篮:

<dependency>
  <artifactId>abc</artifactId>
  <groupId>com.whatever</groupId>
  <version>[1.0,)</version>
<dependency>

在这种情况下,版本1.1(如果可用)将从artifactory中获取。

但请记住,您的代码不容易重建,因为工件将使用动态依赖方法获取。

答案 1 :(得分:1)

您的用例听起来很奇怪,而不是根据最佳做法。

看起来你真正需要的是使用maven snapshot versions

答案 2 :(得分:0)

您可以完全避免指定版本,然后Gradle将选择最新版本

dependencies {
compile 'com.google.guava:guava:+'
}

或者如果您想要最新的7版本

dependencies {
compile 'com.google.guava:guava:7.+'
}
编辑:抱歉,我误解了这个问题。 如果你希望你的项目总是使用最新的代码,那么在这种情况下创建一个多项目并依赖项目的“构建”结果是不是更好?