Jar Jar LinksのAntタスクを使用して、サードパーティのjarファイル(objenesis)のクラスを配布可能なjarファイル(example.jar)に埋め込みます。 Jar Jarは、元のパッケージ(org.objenesis)のクラスを自分が選択したクラスに変換します。空のディレクトリをJar Jarで除外するリンク
これは動作しますが、配布可能なjarに空のディレクトリが残ります。ここ
は、簡略化のbuild.xmlある:
<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
だけでなく、これらの空のディレクトリ(望ましくないe):
org/objenesis/
org/objenesis/instantiator/
org/objenesis/instantiator/basic/
質問:私はこれらの空のディレクトリをどのように除外しますか?
「ザップ」オプション(listed in the doc)を試しましたが、うまくいかなかった。
これは私にとってはうまくいくようでした(私はGradle構文に変換しなければならなかった)。 –