我没有看到源代码,但.class文件。 我还能找出导入的文件吗?如何找到在java类中导入的文件?
0
A
回答
4
请记住,进口仅仅是一种方便的机制,可以让Java开发人员使用它很简单名称(Date
),而不是它的完全合格的名称是指一类(FQN - java.util.Date
或java.sql.Date
)。
因此,如果您运行.class
文件through a decompiler,您可能会看到使用FQN的引用,并且可能没有导入语句。
0
好吧,如果你只想做手工,我建议你看看反编译器,如JD GUI
否则,你需要,如果你想以编程方式将此信息去思考方式。
0
如果您需要批量执行此操作,并且不想打扰反编译器提供的所有其他详细信息,则可以检查常量池以获取类引用。
请注意,如前所述,源导入仅仅是一种便利,并不直接对应于类文件中的任何内容。扫描常量池将而不是显示从源文件中未使用的导入,它将而不是显示仅用于编译时常量(public static final String ...
等)的类。它将显示FQNs甚至在同一包中的类,它将显示使用FQN引用没有导入的类。它将秀类,它们的签名隐含使用:
URL loc = Something.class.getProtectionDomain().getCodeSource().getLocation();
会产生字节码ProtectionDomain
和CodeSource
引用尽管消息来源没有明确提到他们。
https://hg.netbeans.org/core-main/raw-file/default/nbbuild/antsrc/org/netbeans/nbbuild/VerifyClassLinkage.java是如何执行此扫描的示例(请参阅dependencies
方法)。
相关问题
- 1. 如何在ADT中的.java文件中导入所有Android类
- 2. 在Eclipse中导入类/ java文件
- 3. 在JSP文件中导入Java类
- 4. 如何在java中导入文件
- 5. 如何导入Java文件到Eclipse
- 6. 将类导入Java文件
- 7. Android:无法在aidl文件中找到类java.util.ArrayList的导入
- 8. 无法在AIDL文件中找到类android.database.Cursor的导入
- 9. 如何在NetBeans中将java文件导入到另一个java文件中
- 10. 如何在java中找到类文件的包
- 11. 在Java或Groovy中,如何找到byte []的文件类型?
- 12. 如何在Java类文件中包含引用(导入XY)?
- 13. 如何在ClojureScript中导入Java类?
- 14. Java找不到类文件
- 15. 如何将csv文件导入到Java中的mongodb中
- 16. 在Eclipse中找不到Java导入?
- 17. 如何在java/android中的GRPC中的.proto文件中导入数据类型?
- 18. Android,从导入的jar文件中找不到类
- 19. 如何在.java文件中导入.class文件?
- 20. 如何找到java中csv文件的分隔类型
- 21. 如何导入Java类中的JunitParamsRunner
- 22. 将.xls文件导入到java servlet中
- 23. 将CSV文件导入到Java中
- 24. 如何在Android Studio中导入在GitHub上找到的组件?
- 25. java“找不到符号” - 如何在同一目录下导入文件?
- 26. 如何导入java类?
- 27. 如何将java文件导入到javascript文件
- 28. 我如何“导入”一个java文件到另一个文件
- 29. 入门找不到类:org.apache.ivy.core.report.ResolveReport在Java中
- 30. 如何在Android Studio中使用java中的其他文件导入类?
你是什么意思的“进口”? – SLaks 2011-03-31 19:32:39