2015-04-30 31 views
6

有没有办法可以设置--info--stacktrace通过gradle.properties如何使“gradle --stacktrace”成为默认值?

我目前有一个gazillion构建脚本,最终调用gradle在某些时候,我想标准化错误处理行为。

+0

一种方法是编辑的脚本文件的bin目录添加这些参数。 – MJSG

+0

或者我可以“包装包装器”,但是那些没有我的包装器的开发者不会获得与我的构建主机相同的行为。 –

+0

如何使用gradle-wrapper并在封装器中进行必要的更改(如果需要,甚至可以使用它指向定制的gradle实现,并进行更改)。这可以分发给所有的开发人员。 – MJSG

回答

8

不在gradle.properties而是在build.gradle本身。添加下面的代码在编译脚本的开始:

import org.gradle.logging.ShowStacktrace 
gradle.startParameter.showStacktrace = ShowStacktrace.ALWAYS 
throw new RuntimeException('lol') 

它也可能被放在init script

正如在评论中指出,从gradle这个v 2.14这将是:

gradle.startParameter.showStacktrace = org.gradle.api.logging.configuration.ShowStacktrace.ALWAYS 
+0

看起来并没有'ShowInfo.ALWAYS' - 哦... –

+1

对于当前的版本,例如(Gradle 2.14),这是行不通的。请使用:'gradle.startParameter.showStacktrace = org.gradle.api.logging.configuration.ShowStacktrace.ALWAYS' –

+1

如果您没有看到堆栈跟踪,请使用[org.gradle.api.logging.configuration.ShowStacktrace.ALWAYS_FULL] (https://docs.gradle.org/current/javadoc/org/gradle/api/logging/configuration/ShowStacktrace.html)枚举值 – bitek