2013-11-28 3 views
4

나는 Gradle 1.9로 구축 할 몇 가지 테스트가 포함 된 간단한 Java 프로젝트를 가지고 있습니다. 나는의 지시에 따라 빌드에 Jacoco를 추가하려고 오전 : http://www.gradle.org/docs/current/userguide/jacoco_plugin.htmlJacoco 플러그인이있는 Gradle 1.9는 jacoco 에이전트를 찾을 수 없습니다.

나는 실행하면 : gradle clean build jacocoTestReport 내가 빌드 다음 오류 얻을 :

FAILURE: Build failed with an exception. 

    * What went wrong: 
    Execution failed for task ':test'. 
    > Could not resolve all dependencies for configuration ':jacocoAgent'. 
     > Could not find org.jacoco:org.jacoco.agent:0.6.2.201302030002. 
     Required by: 
      :Phoenix:1.0 

내 build.gradle 파일은 다음과 같습니다

apply plugin: 'java' 
apply plugin: 'idea' 
apply plugin: 'jacoco' 
apply plugin: 'sonar-runner' 

sourceCompatibility = 1.7 
version = '1.0' 

test { 
    // enable TestNG support (default is JUnit) 
    useTestNG() 

    // listen to events in the test execution lifecycle 
    beforeTest { descriptor -> 
    logger.lifecycle("Running test: " + descriptor) 
    } 

    // listen to standard out and standard error of the test JVM(s) 
    onOutput { descriptor, event -> 
    logger.lifecycle("Test: " + descriptor + " produced standard out/err: " + event.message) 
    } 
} 

sourceSets { 
    main { 
     java { 
      srcDir 'src' 
     } 
    } 
    test { 
     java { 
      srcDir 'test' 
     } 
    } 
} 

jar { 
    manifest { 
     attributes 'Implementation-Title': 'SQLWriter', 'Implementation-Version': version 
    } 
} 

dependencies { 
    compile files('./lib/commons-codec-1.6.jar') 
    runtime files('./lib/hamcrest-core-1.3.jar') 
    runtime files('./lib/sqlite-jdbc-3.7.2.jar') 
    compile files('./lib/testng-6.8.jar') 
    runtime files('./lib/testng-6.8.jar') 
} 

task doc(type: Javadoc) { 
    source = sourceSets.main.allJava 
} 

jacoco { 
    toolVersion = "0.6.2.201302030002" 
    reportsDir = file("$buildDir/customJacocoReportDir") 
} 

jacocoTestReport { 
    group = "Reporting" 
    description = "Generate Jacoco coverage reports after running tests." 
} 

아무도 내가 누락 된 걸 말해 줄 수 있습니까? 나는 Jacoco 플러그인 문서가 최신이 아니거나 최신 버전의 Gradle과 호환되지 않을 수 있다고 생각하지만이 시점에서 Gradle에 대한 경험은 거의 없습니다.

감사합니다.

답변

5

빌드에 리포지토리를 정의하지 않았습니다. Maven Central이 될 많은 사람들에게.

repositories { 
    mavenCentral() 
} 

그것은 당신이 lib 폴더를 가리키는대로 라이브러리를 직접 관리하려는 것처럼 보인다. 이 라이브러리는 소스 코드로 체크인했다고 가정합니까? JaCoCo 라이브러리에 동일한 전략을 적용하려면 JaCoCo 플러그인의 configurations에 해당 전략을 지정해야합니다.

+0

어리석은 나를. 나는 Gradle이 플러그인 의존성을 풀기위한 기본 repo를 가질 것이라고 생각했다. 고맙다, 나에게 이것을 꼼짝 않고 바라본 또 다른 N 시간을 구 해줘! 당신 말이 맞아요, 아마 그 Jacoco 의존성을 끌어 내려 소스 제어를 할 것입니다. 우리는 모든 종속성 산출물을 소스로 관리하는 정책을 좋거나 나쁘게 만듭니다. –

관련 문제