如何使用Gradle设置容易出错的错误(获取各种错误)

时间:2019-07-10 17:11:57

标签: java gradle errorprone

我正在尝试使用gradle设置易于出错的内容,但是我尝试的所有操作都给了我一些错误:

为了测试,我使用gradle设置了一个简单的hello world java程序,该程序易于编译,没有错误。 然后我读到:https://github.com/tbroyer/gradle-errorprone-plugin 从安装指南中找到并在build.gradle中进行了尝试:

plugins {
    id 'java'
    id("net.ltgt.errorprone") version "2.3.3"
}

group 'test'
version '1.0-SNAPSHOT'

sourceCompatibility = 1.8

repositories {
    mavenCentral()
}

dependencies {
    testCompile group: 'junit', name: 'junit', version: '4.12'
    errorprone("com.google.errorprone:error_prone_core:2.3.3")

}

这给了我这个错误:

Plugin [id: 'net.ltgt.errorprone', version: '2.3.3'] was not found in any of the following sources:

Gradle Core Plugins (plugin is not in 'org.gradle' namespace)
Plugin Repositories (could not resolve plugin artifact 'net.ltgt.errorprone:net.ltgt.errorprone.gradle.plugin:2.3.3')
  Searched in the following repositories:
    Gradle Central Plugin Repository

我将2.3.3更改为latest.version,并得到了相同的错误

然后我找到了https://plugins.gradle.org/plugin/net.ltgt.errorprone,并尝试了版本号0.8.1。 我需要能够使用java11,所以据我所知,不能使用gradle 4.x。

如果有人知道一个实际的存储库,我可以看一下它是否对gradle使用了易于出错的内容,我将不胜感激:)

我的gradle包装器属性设置为使用gradle版本5.4.1

1 个答案:

答案 0 :(得分:0)

解决如下

  1. 将Gradle插件添加到build.gradle文件
plugins {
    id("net.ltgt.errorprone") version "1.1.0"
}

Release versions

  1. 在build.gradle文件中为error_prone_core添加依赖项
dependencies {
    errorprone("com.google.errorprone:error_prone_core:2.3.3")
}

Releases
3.构建项目,这将添加errorprone配置名称空间
4.如果您使用的是Java-8,也需要添加其他依赖项。

errorproneJavac("com.google.errorprone:javac:9+181-r4173-1")

以及步骤2中的依赖项。
5.您可以按任务customize/enable/disable

tasks.withType(JavaCompile).configureEach {
    options.errorprone.disableWarningsInGeneratedCode = true
    options.errorprone.enabled = false // change it to true to enable
}

注意:如@ jb-nizet在OP注释中所述,gralde插件和error_prone_core具有不同的版本和独立的发布周期。

我的build.gradle文件

buildscript {
    ext{
        errorproneVersion = '2.3.3'
    }
    repositories {
        mavenLocal()
        mavenCentral()
    }
}

plugins {
    id "java"
    id("net.ltgt.errorprone") version "1.1.0"
}

sourceCompatibility = JavaVersion.VERSION_1_8
targetCompatibility = JavaVersion.VERSION_1_8

repositories {
    mavenLocal()
    mavenCentral()
}

dependencies {
    errorprone("com.google.errorprone:error_prone_core:$errorproneVersion")
    errorproneJavac("com.google.errorprone:javac:9+181-r4173-1")
}

tasks.withType(JavaCompile).configureEach {
    options.errorprone.disableWarningsInGeneratedCode = true
    options.errorprone.enabled = false
}

Ref

Github-error-prone