Gradle7.2项目运行Fortify20报ForkOptions配置冲突错误如何解决
该问题可以通过禁用其中一项冲突配置解决,根因为Gradle 6.7+引入的javaCompiler工具链配置,与Fortify 20扫描过程中自动向JavaCompile任务的ForkOptions注入的executable参数互斥,常规gradle build任务不会触发Fortify的参数注入所以可以正常执行,仅扫描时会触发报错。
报错信息如下:
Must not use executable property on ForkOptions together with javaCompiler property
可选解决方案
方案一:移除
javaCompiler配置,适配Fortify的executable注入
该方案改动最小,无需调整Fortify侧配置,直接在项目根目录的build.gradle中添加全局任务配置即可:tasks.withType(JavaCompile) { javaCompiler = null }配置完成后重新执行Fortify扫描即可生效。
方案二:清空ForkOptions的
executable配置,适配Gradle工具链
若项目需要保留javaCompiler工具链配置,可在Fortify扫描任务的配置段中添加如下逻辑:tasks.withType(JavaCompile) { forkOptions.executable = null }该方案需要确保Fortify扫描时可正常识别Gradle配置的JDK路径,无特殊工具链要求优先选择方案一。
内容的提问来源于stack exchange,提问作者cgratelli
相关产品推荐
相关产品推荐

