我目前正在 Jenkins 服务器上使用 ANT 构建一个 android 应用程序。
DexGuard 设置为在 custom_rules.xml 中发布时运行。
目前 DexGuard 尝试转换方法时存在问题:
[dexguard] Unexpected error while converting:
[dexguard] Class = [o/?]
[dexguard] Method = [?(Ljava/lang/String;)Lo/?;]
[dexguard] Exception = [java.lang.IllegalStateException] (Variable v17 too large for instruction [neg-int v17, v17])
[dexguard] java.lang.IllegalStateException: Variable v17 too large for instruction [neg-int v17, v17]
...
Stack trace
...
[dexguard] Not converting this method
我的问题是,有没有办法让 DexGuard 以错误状态退出,以便 ANT 或 Jenkins 可以将构建标记为失败?
目前它只是打印堆栈跟踪并继续。
我目前正在使用 Jenkins 的 Text-finder 插件作为构建后的步骤来匹配 DexGuard 异常。如果发现它会将构建降级为失败。