考虑这样一种情况:有一个很大的项目,需要大量时间来编译,而我将其生成的 Artifact 作为单独的文件(jar)存储。
我想在此项目上运行单元测试,而无需编译和 jar 装项目本身,因此我需要删除对compileJava
任务的依赖,但是此任务不在dependsOn
任务的test
列表中。dependsOn
任务的test
属性仅包含一些[file collection]
,如果我打印此FileCollection.files
,则将获取文件和目录列表,其中包括.../build/classes/main
。我认为,删除该条目后,我将成功消除对compileJava
的依赖(据我所知,.../build/classes/main
只是运行compileJava
的结果,这就是compileJava
出现的原因)。但我只是不明白如何删除此条目。
顺便说一句,在这种情况下,将这个jar添加到classpath没问题,所以这不是问题。
我正在使用Gradle 1.8。
谢谢。
最佳答案
如果没有任何变化,compileJava
将是最新的,并且jar
不依赖test
。但是,如果您仍然想增加对下载的Jar运行测试的功能,请声明另一个Test
任务。 (重新配置test.classpath
应该也可以,但是似乎不太可取。)
关于gradle - 声明运行测试而无需编译源代码,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/24307486/