我构建了一个我在nexus存储库上部署的库。此快照经常更改,因此并非每个更改都会获得新版本号。我的问题是,如果不更改使用此库的项目中的版本号,我将无法获取最新代码。我试过" - 刷新依赖"我还尝试通过在" \ caches \ modules-2 \ files-2.1 \ my.dependency"中删除此依赖项的文件夹来清除缓存中的依赖项。
我也试过这个:
configurations.all {
resolutionStrategy.cacheChangingModulesFor 0, 'seconds'
}
有人知道如何强制成绩下载最新的依赖状态,尽管版本号没有变化吗?
答案 0 :(得分:21)
首先确保您的快照具有正确的版本格式:
<template name="options">
<div class="twin-group js-radioGroup" data-id={{_id}}>
<ul class="upShift">
{{#each values}}
<li>
<label class="twin-item">
<input type="radio" value={{this.result}}>
<span class="radio-label">{{this.label}}</span>
</label>
</li>
{{/each}}
</ul>
</div>
</template>
如果您没有使用dependencies {
compile group: "groupId", name: "artifactId", version: "1.0-SNAPSHOT"
}
后缀(或者您没有使用Maven存储库),则必须指出您的依赖关系正在发生变化:
-SNAPSHOT
然后你必须告诉Gradle不要缓存更改的依赖项,否则它只会每24小时更新一次:
dependencies {
compile group: "groupId", name: "artifactId", version: "1.0", changing: true
}
如果您还将依赖项配置为动态版本,请执行以下操作:
configurations.all {
resolutionStrategy.cacheChangingModulesFor 0, 'seconds'
}
然后你必须添加:
dependencies {
compile group: "groupId", name: "artifactId", version: "1+", changing: true
}
请注意,这可能会减慢您的构建速度。
如果这没有用,请删除configurations.all {
resolutionStrategy.cacheChangingModulesFor 0, 'seconds'
resolutionStrategy.cacheDynamicVersionsFor 0, 'seconds'
}
目录的相关部分,或者再删除整个目录。
如果这对两者都没有帮助,我担心它会成为您存储库方面的问题。