2017-10-07 107 views
6

我已经创建了我非常确定的模块化jar文件。但如果可能的话,我想仔细检查。给定一个jar文件,有没有一种方法可以确定编译器会在其中找到哪些模块?在jar文件中列出模块

回答

8

另一种方法是使用的jar --describe-module-d的简称),例如:

jar --file=myjar.jar --describe-module 
0

要提取JAR文件的内容以查看内部内容,请将JAR的扩展名从.jar更改为.zip。然后,您可以使用您选择的任何zip提取工具来提取文件。

+0

我知道如何提取罐。我想知道是否有更简单的方法来确定它包含的内容,而不是仔细阅读源文件。 – PopKernel

+0

模块?你的意思是外部库吗? – Steampunkery

+1

不,模块与Java 9模块一样,又名项目拼图... – PopKernel

3

您可以使用以下java工具命令列出的罐子内的模块: -

java -p yourModular.jar --list-modules 

编辑:您还可以使用jar --file=youModular.jar --describe-module@Nicolai@Alan的建议。

+2

我建议[使用'jar --describe-module'](https://stackoverflow.com/a/46617956/2525313)来代替 - 它更精确并包含更多相关信息。 – Nicolai

+0

@Nicolai雅在你的评论后编辑更新(除此之外无法做其他事情)以使其更有意义。 – nullpointer