task copySettingsGradle(type: Copy) {
from file("settings.gradle")
into file("src/main/resources")
}
build.dependsOn copySettingsGradle
但是如果settings.gradle不在那里,那么它当前似乎会默默地失败:构建会正常进行。
如果此必需的任务失败,我希望防止生成发生。为此,在我看来,我需要两件事:确定from.file(...)
找不到文件的方法,然后在任务上设置“失败”标志的方法...什么的。
试图解决这个问题使我找到了abstractcopytask
,然后找到了copysourcespec.from...但我一点也不知道。
当然,我可以使用非DSL Groovy复制并执行成功检查。但是把要求完成的任务标记为“失败”的问题使我感到困惑。
这里有一个问题,从8年前,关于“如何阻止一个梯度建设”。Peter Niederwieser在他的回答中说:“已经讨论过增加[一种阻止的方法]”。
此外,在官方Gradle文档的这一页上,我看到使用了以下表达式:“task will be mark as failed”(如果一个计时器用完)。“已标记为失败”...那意味着???
我发现这是相当惊人的,我没有找到任何有关这方面的信息!“依赖”的概念涉及依赖于其他事物的存在或成功。我不仅找不到这种机制(除了抛出gradleexception
)现在是否已经引入到Gradle中,甚至找不到任何关于它的讨论。莫名其妙!
您可以使用ANT copy任务来完成此操作。Gradle允许将调用委托给底层ANT运行时。
ANT copy任务提供了一个名为failonerror的选项,它为您提供failure-if-file-not-found行为。
它看起来像这样:
task copySettingsGradle {
doLast {
ant.copy(file: 'settings.gradle',
todir: 'src/main/resources',
overwrite: true,
failonerror: true)
}
}
我只是想继续我的应用程序,而我得到了这个编译错误,我不知道它是从哪里开始的: 这是我的分级文件:
我在以可管理的方式组织构建时遇到了问题。在我的gradle构建中有大量的任务,因为对于每个特定的工作元素,gradle都需要一个这种类型的任务。例如:复制一个文件分级需要复制任务类型,压缩一个文件分级需要压缩任务类型,删除几个文件分级需要删除任务类型。Javadoc、Jar、Ear等也需要它们的任务类型。最终,build有大量的任务,要以特定的顺序运行所有这些任务,我必须使用 将这些规则应用于所有
我正在编写一个自定义的gradle插件,它生成代码并注入一些新的gradle任务。我当前的问题是,在上,或任务失败。 在您说but hey之前,R文件不是生成的:它是生成的。我在文件系统中看到了文件。 当我在mac上禁用并行任务时,我玩得更多了,它的编译也很好。然而,在特拉维斯身上,它还是失败了。
我用facebook SDK4.20.0构建了我的android应用程序。当我构建项目时,它在运行到任务中时抛出了zipException Build.Gradle如下: zipInputStream(Android API27)的代码片段: 并且stacktrace显示异常是由以下原因引起的
我正在使用Eclipse的STS插件创建gradle多项目。我以为我在读完教程后得到了基本的知识,但我无法再现所显示的行为。添加时 对于父项目的build.gradle,我将假设每个项目执行的任务'hello‘。为子项目实际进行了2次,但结果只是: 我的项目树看起来或多或少是这样的:
Jenkins将良好的构建标记为失败,因为某些单元测试失败。如果我在没有单元测试的情况下运行构建,我将获得构建成功状态。如何配置Jenkins来执行以下操作: