如何使用java从Zip文件中提取jar

如何使用java从Zip文件中提取jar,java,jar,zip,Java,Jar,Zip,文件结构 Zip file-> web-Inf -> *.jar 如何从该路径提取jar 我正在使用asm树类读取器从jar类中提取方法。 如果我提到的路径正确,我可以读取jar。该类可以用于处理zip文件。具体来说,方法entries()返回Zip文件中所有条目的列表。您需要发布您尝试过的代码和收到的错误。如果没有,它看起来像是为我请求的代码…我不知道确切的路径。这就是问题所在。@karthikj这就是我提到entries()方法的原因,迭代它,直到在正确的目录中找到jar文件

文件结构

Zip file-> web-Inf -> *.jar 
如何从该路径提取jar

我正在使用
asm树类读取器
从jar类中提取方法。
如果我提到的路径正确,我可以读取jar。

该类可以用于处理zip文件。具体来说,方法
entries()
返回Zip文件中所有条目的列表。

您需要发布您尝试过的代码和收到的错误。如果没有,它看起来像是为我请求的代码…我不知道确切的路径。这就是问题所在。@karthikj这就是我提到entries()方法的原因,迭代它,直到在正确的目录中找到jar文件。即使我得到目录路径,我也无法读取jar文件,它总是抛出
FileNotFoundException
@karthikj你是怎么读的?正确的方法是ZipFile.getInputStream。我假设你试图用ZipEntry创建一个文件对象?是的,那不行。话虽如此,我发现传递InputStreams而不是文件,或者更糟糕的是,传递文件名使程序更易于测试(因为您可以在测试中插入StringReader,而不必通过文件系统)