没有从 artifactory 获取最新的快照
Not getting latest snapshot from artifactory
我正在使用 artifactory 来提供 jar 文件。我有 scala
个项目 SBT
。 SBT 无法解析最新的快照。它总是在解析第二个版本。我的意思是,如果我从 artifactory
中清除特定的 jar 文件,我需要构建两次。只有这样,它才得到解决。
清理罐子并在第一次构建后,这些是工件:
- 1.2-SNAPSHOT
- frameworks_2.11-1.2-20150221.064040-1-javadoc.jar
- frameworks_2.11-1.2-20150221.064040-1-sources.jar
- frameworks_2.11-1.2-20150221.064040-1.pom
- frameworks_2.11-1.2-20150221.064040-2.jar
- maven-metadata.xml
- maven-metadata.xml
即使 jar 存在,也没有在我的本地项目中得到解决。再次构建框架jar后,这里是artifactory列表。
- 1.2-SNAPSHOT
- frameworks_2.11-1.2-20150221.064040-1-javadoc.jar
- frameworks_2.11-1.2-20150221.064040-1-sources.jar
- frameworks_2.11-1.2-20150221.064040-1.pom
- frameworks_2.11-1.2-20150221.064040-2-javadoc.jar
- frameworks_2.11-1.2-20150221.064040-2-sources.jar
- frameworks_2.11-1.2-20150221.064040-2.jar
- frameworks_2.11-1.2-20150221.064040-2.pom
- frameworks_2.11-1.2-20150221.064040-3.jar
- maven-metadata.xml
- maven-metadata.xml
在此之后,它正在得到解决。现在,即使在构建 jar 时进行一些更改,它也始终只能从中解决。 None 的新更改将得到反映。
有人可以告诉我如何解决这个问题吗?因此,我需要始终清除工件并构建两次 jars。
问题在于为 jar 工件计算的唯一快照版本。当其他工件获得版本 2.11-1.2-20150221.064040-1
时,jar 工件具有不同的版本 - 2.11-1.2-20150221.064040-2
.
造成这种情况的根本原因在于存储库Maven Snapshot Version Behavior is configured for unique snapshots and the way SBT deploys the artifacts. See the answer to this Whosebug question对问题的很好解释
时的Artifactory行为的组合。
如果您想使用独特的快照,您可以:
1) 应用 Artifactory 邮件列表中描述的 solution(基于提到的 Whosebug question/answer)
您需要按以下方式定义存储库才能传递 build.timestamp
矩阵参数:
publishTo := Some("Artifactory Realm" at "http://localhost:8081/artifactory/libs-snapshot-local;build.timestamp=" + new java.util.Date().getTime)
2) 尝试使用 sbt-unique-version. It this case you will need to change the Maven Snapshot Version Behavior 到 "Deployer"。
我正在使用 artifactory 来提供 jar 文件。我有 scala
个项目 SBT
。 SBT 无法解析最新的快照。它总是在解析第二个版本。我的意思是,如果我从 artifactory
中清除特定的 jar 文件,我需要构建两次。只有这样,它才得到解决。
清理罐子并在第一次构建后,这些是工件:
- 1.2-SNAPSHOT
- frameworks_2.11-1.2-20150221.064040-1-javadoc.jar
- frameworks_2.11-1.2-20150221.064040-1-sources.jar
- frameworks_2.11-1.2-20150221.064040-1.pom
- frameworks_2.11-1.2-20150221.064040-2.jar
- maven-metadata.xml
- maven-metadata.xml
即使 jar 存在,也没有在我的本地项目中得到解决。再次构建框架jar后,这里是artifactory列表。
- 1.2-SNAPSHOT
- frameworks_2.11-1.2-20150221.064040-1-javadoc.jar
- frameworks_2.11-1.2-20150221.064040-1-sources.jar
- frameworks_2.11-1.2-20150221.064040-1.pom
- frameworks_2.11-1.2-20150221.064040-2-javadoc.jar
- frameworks_2.11-1.2-20150221.064040-2-sources.jar
- frameworks_2.11-1.2-20150221.064040-2.jar
- frameworks_2.11-1.2-20150221.064040-2.pom
- frameworks_2.11-1.2-20150221.064040-3.jar
- maven-metadata.xml
- maven-metadata.xml
在此之后,它正在得到解决。现在,即使在构建 jar 时进行一些更改,它也始终只能从中解决。 None 的新更改将得到反映。
有人可以告诉我如何解决这个问题吗?因此,我需要始终清除工件并构建两次 jars。
问题在于为 jar 工件计算的唯一快照版本。当其他工件获得版本 2.11-1.2-20150221.064040-1
时,jar 工件具有不同的版本 - 2.11-1.2-20150221.064040-2
.
造成这种情况的根本原因在于存储库Maven Snapshot Version Behavior is configured for unique snapshots and the way SBT deploys the artifacts. See the answer to this Whosebug question对问题的很好解释
时的Artifactory行为的组合。
如果您想使用独特的快照,您可以:
1) 应用 Artifactory 邮件列表中描述的 solution(基于提到的 Whosebug question/answer)
您需要按以下方式定义存储库才能传递 build.timestamp
矩阵参数:
publishTo := Some("Artifactory Realm" at "http://localhost:8081/artifactory/libs-snapshot-local;build.timestamp=" + new java.util.Date().getTime)
2) 尝试使用 sbt-unique-version. It this case you will need to change the Maven Snapshot Version Behavior 到 "Deployer"。