2013-05-13 2 views
2

Gradle을 사용하여 종속성 (FAT jar)을 포함하는 jar 파일을 만들어야합니다.Gradle을 사용하여 FAT 소스 전용 jar 만들기

catch : jar 파일에는 똑같은 .groovy 파일 ... no .class 파일 만 포함하면됩니다. http://docs.codehaus.org/display/GRADLE/Cookbook#Cookbook-Creatingafatjar

과 한 항아리 플러그인 :

은 내가 Gradle을 요리 책에서 그것을 할 수있는 방법 본 적이 https://github.com/rholder/gradle-one-jar

을하지만 두 가지 방법이 실제 대신 컴파일 된 .class 파일을 사용하여 참여 소스 .groovy 파일. 또한이 항아리를 실행할 필요가 없습니다. 난 그냥 내 .groovy 스크립트를 참조하고 의존성이 이미 그들을 위해있을 수 있어야합니다.

이것이 가능합니까?

답변

2

.jar 파일이 필요한지 확실하지 않거나, .jar 파일을 소스로 배포하는 것이 혼란 스럽기 때문에 .zip으로 충분할지 모르겠습니다. 빌드/배포 내에서 [버전] -fat.jar - 이제이 [프로젝트 이름]라는 파일을 생성합니다 매우 간단한 예입니다

task('fatJar', type: Zip) { 
    extension = 'jar' // overriding default value: 'zip' 
    classifier = 'fat' // alternatively you can set basename or appending 

    from(sourceSets.main.allGroovy) // will fail if the groovy plugin isn't applied 
    from(configurations.runtime) // this includes all your jars needed on runtime 
} 

:하지만 독립적으로 당신이 필요로하는 무엇의 우편 업무는 당신이 원하는 무엇인가/zip의 근원에있는 모든 항아리와 그 옆에 그루비 소스 파일이 있습니다. 더 많은 옵션을 보려면 Gradle Zip task의 설명서를 참조하십시오.

관련 문제