如何编写一个从以前编译的JAR中删除文件的ant任务?
假设我的JAR中的文件是:
aaa/bbb/ccc/Class1
aaa/bbb/ccc/Class2
aaa/bbb/def/Class3
aaa/bbb/def/Class4
Run Code Online (Sandbox Code Playgroud)
...我想要一个没有aaa.bbb.def包的JAR文件的版本,我需要使用ant将其删除,这样我最终会得到一个包含以下内容的JAR:
aaa/bbb/ccc/Class1
aaa/bbb/ccc/Class2
Run Code Online (Sandbox Code Playgroud)
谢谢!
我目前有这个:
<jarjar destfile="a.jar" manifest="Manifest.mf">
<zipfileset src="first.jar"/>
<zipfileset src="second.jar"/>
</jarjar>
Run Code Online (Sandbox Code Playgroud)
问题是我必须手动指定每个jar,因为我需要考虑src参数.我想要这样的东西:
<zipfileset>
<include name="*.jar"/>
<zipfileset>
Run Code Online (Sandbox Code Playgroud)
并将其内容提取并包含在我生成的存档中.这可能吗?
我的ANT构建脚本使用名为createEJBStubs的WebSphere命令生成一个JAR文件,其中包含所有内容和一个新生成的类,即:com/myapp/services/_User_Service_Stub.class.
由于此存根类仅用于在开发时运行JUnit测试,因此我希望它位于自己的JAR文件中.
我怎么能告诉ANT复制AAA.JAR匹配中的所有东西,比如说,_*Stub.class只复制那些文件BBB.JAR(同样,保持相同的目录/包结构)?
任何想法或指针都将非常感激!谢谢,
抢