首页 > 解决方案 > PITest 问题:属性“mainClass”是最终的,无法进一步更改

问题描述

我最近将我的项目从 升级Java 8Java 11Gradle 6.5。但是,当我运行命令时,./gradlew pitest我收到以下错误:

Execution failed for task ':pitest'.
> The value for task ':pitest' property 'mainClass' is final and cannot be changed any further.

这是我pitest在我的设置build.gradle

pitest {
    pitestVersion = '1.4.3'
    targetClasses = ['com.myproject.*']
    excludedClasses = [
            'com.myproject.configuration.*',
            'com.myproject.controller.*',
    ]
    threads = 10
    enableDefaultIncrementalAnalysis = true
    historyInputLocation = ['build/reports/pitest/fastermutationtesting']
    historyOutputLocation = ['build/reports/pitest/fastermutationtestingoutput']
    outputFormats = ['XML', 'HTML']
    timestampedReports = true
    mutationThreshold = 90   
}

这是我的pitest相关依赖项:

Plugins{
       id "info.solidsoft.pitest" version '1.3.0'
}

testCompile 'info.solidsoft.gradle.pitest:gradle-pitest-plugin:1.3.0'

我不确定这个mainClass属性来自哪里,也没有找到关于这个问题的任何相关答案或文档。

标签: javagradlepitest

解决方案


我能够通过将依赖项版本升级到来解决我的问题:

id "info.solidsoft.pitest" version '1.5.1'

testCompile 'info.solidsoft.gradle.pitest:gradle-pitest-plugin:1.4.0'

增加依赖版本后,该命令./gradlew pitest正常工作并且pitests运行良好。


推荐阅读