2012-09-04 1 views
1
apply plugin: 'java' 

archivesBaseName = 'foo-client' 
sourceCompatibility = JavaVersion.VERSION_1_7 
targetCompatibility = JavaVersion.VERSION_1_7 
//version = '1.0' 
dependencies{ 
    compile 'foo:bar:1.0-SNAPSHOT', 
      'foo:bar-common:1.0-SNAPSHOT', 
      'foo:bar-communication-api:1.0-SNAPSHOT' 
} 
repositories{ 
    flatDir{ 
     dirs '/lib' 
    } 
} 

작업이 상속 된 jar 작업을 실행하면 프로젝트의 build/lib 디렉토리에 foo-client.jar이 생성됩니다. 내가해야 할 일은 동일한 디렉토리에 여러 개의 병을 넣는 것입니다. 그렇지 않으면 프로젝트가 제대로 실행되지 않습니다.Java Gradle : java-plugin jar 작업을 사용하여 외부 jar를 포함하는 방법은 무엇입니까?

어떻게하면됩니까?

답변

0

,

apply plugin: 'java' 

archivesBaseName = 'foo-client' 
sourceCompatibility = JavaVersion.VERSION_1_7 
targetCompatibility = JavaVersion.VERSION_1_7 

task copyToLib(type: Copy){ 
    into 'bar\\lib' 
    from configurations.runtime 
    from configurations.default.allArtifacts.getFiles() 
} 

dependencies{ 
    compile 'foo:bar-agent-dist:2.0.0-SNAPSHOT', 
      'foo:bar-common:2.0.0-SNAPSHOT', 
      'foo:bar-communication-api:2.0.0-SNAPSHOT' 
} 


repositories{ 
    flatDir{ 
     dirs '/lib' 
    } 
} 
0

당신은 런타임 종속성과 같은 외부 항아리를 정의한 다음/lib 디렉토리, 예컨대 : 구축에 복사하는 복사 작업을 사용할 수 Gradle을 1.1 다음 한 트릭을 사용

task copyLibs(type: Copy) { 
    from configurations.runtime 
    into "$buildDir/libs" 
} 
관련 문제