我遇到了一种情况,当Gradle的所有东西都是最新的时候,虽然我仍然喜欢它为我运行任务.显然它没有:
gradle test
:compileJava UP-TO-DATE
:processResources UP-TO-DATE
:classes UP-TO-DATE
:compileTestJava UP-TO-DATE
:processTestResources UP-TO-DATE
:testClasses UP-TO-DATE
:test UP-TO-DATE
BUILD SUCCESSFUL
Total time: 0.833 secs
Run Code Online (Sandbox Code Playgroud)
我可以强制它运行测试运行干净的测试,尽管这可能被认为在某些情况下的开销.有没有办法强制执行任务,无论Gradle是否认为它是最新的?
我在本地机器(OS X 10.10)上有一个Jenkins原型实例(最新版本).它每次启动我的机器时都会启动.
如何禁用此自动启动?
我只想在需要时手动启动它.
是否有方法(或插件)在Jenkins主页上订购标签?默认情况下,它们按字母顺序排序.只有我发现的信息是'不',但它已经很老了:
http://jenkins-ci.361315.n4.nabble.com/Ordering-of-view-tabs-on-home-page-td363811.html
我想运行mvn
命令以消除下的所有伪像~/.m2/repository/here/goes/my/groupid
。为此,我运行:
mvn -pl my-module dependency:purge-local-repository -DresolutionFuzziness=groupId -Dinclude=<here-goes-my-groupid> -DactTransitively=false -DreResolve=false -Dverbose=true
Run Code Online (Sandbox Code Playgroud)
只要当前工件(my-maven-plugin)的当前版本(3.0.0)在本地存储库中,此方法就可以正常工作。
如果当前工件(my-maven-plugin)的当前版本(3.0.0)不在本地存储库中(例如,本地存储库中仅存在该工件的较旧版本,例如2.9.0),则不会得到任何结果清除:
[INFO] --- maven-dependency-plugin:3.0.0:purge-local-repository (default-cli) @ my-maven-plugin ---
Downloading: https://repo.maven.apache.org/maven2/here/goes/my/groupid/my-maven-plugin/3.0.0/my-maven-plugin-3.0.0.jar
[INFO] Unable to resolve all dependencies for : <here-goes-my-groupid>:my-maven-plugin:3.0.0. Falling back to non-transitive mode for initial artifact resolution.
[INFO] No artifacts included for purge for project: <here-goes-my-groupid>:my-maven-plugin:maven-plugin:3.0.0
Run Code Online (Sandbox Code Playgroud)
我不明白为什么maven-dependency-plugin尝试从maven Central下载任何内容。它应该做的就是递归地将文件夹放到本地文件系统中。
无论当前人工制品的当前版本是否在本地存储库中,我如何强制在给定的groupId下清除所有人工制品?
我看到间歇性的 Terraform 故障在我看来就像是 Terraform 本身内部的竞争条件:
21:31:37 aws_s3_bucket.jar: Creation complete after 1s
(ID: automatictester.co.uk-my-bucket)
...
21:31:38 * aws_s3_bucket_object.jar: Error putting object in S3 bucket
(automatictester.co.uk-my-bucket): NoSuchBucket: The specified bucket
does not exist
Run Code Online (Sandbox Code Playgroud)
正如您在上面的日志中看到的那样,TF 首先声称它在 21:31:37 创建了一个存储桶,然后说它不能将对象放入该存储桶中,因为它在 21:31:38 不存在。
上述错误背后的代码:
resource "aws_s3_bucket" "jar" {
bucket = "${var.s3_bucket_jar}"
acl = "private"
}
...
resource "aws_s3_bucket_object" "jar" {
bucket = "${var.s3_bucket_jar}"
key = "my.jar"
source = "${path.module}/../target/my.jar"
etag = "${md5(file("${path.module}/../target/my.jar"))}"
}
Run Code Online (Sandbox Code Playgroud)
显然,这两者之间定义了一种隐式依赖关系,因此我想到的失败的唯一原因是 Amazon S3 的最终一致性。
如何处理此类错误?我相信显式定义的依赖depends-on
不会为已经存在的隐式依赖提供任何价值。
amazon-s3 amazon-web-services terraform terraform-provider-aws