Jar Jar Links의 Ant 태스크를 사용하여 제 3 자 jar 파일 (objenesis)의 클래스를 배포 가능 jar 파일 (example.jar)에 포함합니다. Jar Jar는 원래 패키지 (org.objenesis)의 클래스를 내가 선택한 클래스로 변환합니다.Jar Jar로 빈 디렉토리 제외 링크
작동하지만 배포 가능한 jar에 빈 디렉토리를 남깁니다.
<target name="jar" depends="compile">
<taskdef name="jarjar" classname="com.tonicsystems.jarjar.JarJarTask"
classpath="lib/jarjar-1.1.jar"/>
<jarjar jarfile="dist/example.jar" excludes="org.objenesis.**">
<fileset dir="build/classes/main"/>
<zipfileset src="lib/objenesis-1.2.jar"/>
<rule pattern="org.objenesis.**" result="[email protected]"/>
</jarjar>
</target>
example.jar 내용물의 샘플을 (예상)을 포함한다 :
org/thirdparty/Objenesis.class
org/thirdparty/ObjenesisBase.class
여기
단순화 된 build.xml 인
뿐만 아니라 이러한 빈 디렉토리 (바람직하지 않음 e) :
org/objenesis/
org/objenesis/instantiator/
org/objenesis/instantiator/basic/
내 질문 : 이러한 빈 디렉토리를 제외하는 방법은 무엇입니까?
"zap"옵션 (listed in the doc)을 시도했지만 작동하지 않았습니다.
이것은 나를 위해 작동하는 것 같았습니다 (저는 Gradle 구문으로 변환해야했습니다). –