如何从.jar文件中提取.class文件?

sem*_*las 5 ant

一个简单的问题:我喜欢这个Ant的外观:

<fileset dir="${lib}">  
   <patternset refid="myPattern" />  
</fileset>
Run Code Online (Sandbox Code Playgroud)

所以我可以使用这个例如从$ {lib}复制一些与myPattern匹配的.jar文件.

如果我真正想要的是查看$ {lib}中的每个.jar并仅选择与myPattern匹配的.class文件,该怎么办?

mat*_*att 10

这项unjar任务几乎完全符合您的要求.使用a fileset指定要从中提取的jar文件,使用a 指定要提取的patternset文件.

<unjar dest="${dest.dir}">
  <patternset refid="myPattern" />
  <fileset dir="${lib}" includes="*.jar" />
</unjar>
Run Code Online (Sandbox Code Playgroud)