문제

현재 Gradle 프로젝트에 Project Lombok 도우미를 포함하려고 하는데 다음을 수행하는 동안 Gradle에 대한 지침 내 build.gradle 내에서 다음 오류가 발생합니다.

오류:(11, 0) 빌드 스크립트 오류, 지원되지 않는 Gradle DSL 메서드 발견:'제공()'!

가능한 원인은 다음과 같습니다.

  • 메소드가 없는 Gradle 버전을 사용하고 있습니다.
  • 메소드를 제공하는 Gradle 플러그인을 적용하지 않았습니다.
  • 또는 빌드 스크립트에 실수가 있습니다.

내 현재 build.gradle 파일:

apply plugin: 'java'

sourceCompatibility = 1.5
version = '1.0'

repositories {
    mavenCentral()
}

dependencies {
    provided "org.projectlombok:lombok:1.14.4"
    testCompile group: 'junit', name: 'junit', version: '4.11'
}
도움이 되었습니까?

해결책

릴리스 2.12부터 provided 범위가 호출됩니다. compileOnly


이전 답변:

제공되는 범위는 'war' 플러그인(http://www.gradle.org/docs/current/userguide/war_plugin.html , 제공된컴파일 ) 'war' 플러그인을 사용하고 싶지 않은 경우 '제공된' 범위와 관련하여 열린 JIRA 문제도 있습니다. http://issues.gradle.org/browse/GRADLE-784 , 제안된 해결 방법은 고유한 구성을 만드는 것입니다.

configurations {
   provided
}

컴파일 클래스 경로와 함께 사용되도록 설정하십시오.

sourceSets {
    main {
        compileClasspath += configurations.provided 
    }
}

다른 팁

앱 레벨 그라데이 파일을 확인하십시오.어떤 줄에도 다음과 같이 보이는 경우 :

compile dependency.gson provided dependency.javaxAnnotation
.

이렇게 편집 :

compile dependency.gson 
provided dependency.javaxAnnotation
.

작동해야합니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top