Java-java中怎么用代码获取到class文件里面所引用的包?

Java-java中怎么用代码获取到class文件里面所引用的包?

清晨说ぺ晚安 发布于 2017-09-27 字数 210 浏览 1289 回复 4

java中怎么用代码获取到class文件里面所引用的包?我想把jar中已经编译好的class文件里所引用的包获取到,之前试过了一些方法,但是都只能获取到方法,成员变量,以及所在包名,却没办法获取到引用的包名。求大神!!!

如果你对这篇文章有疑问,欢迎到本站 社区 发帖提问或使用手Q扫描下方二维码加群参与讨论,获取更多帮助。

扫码加入群聊

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

晚风撩人 2017-10-16 4 楼

你把java文件当普通文件读不就行了
以关键字package检索,一行一行读取
自己写一个ReadPackageUtils做成通用的

泛泛之交 2017-10-12 3 楼

通过java的反射是不可能实现的,因为import完全是给编译器用的,倒是可以利用反编译工具jad反编译class,然后正则表达式获取import内容,或者实现java反编译功能,根据虚拟机的class规范直接解析class文件。

浮生未歇 2017-10-09 2 楼

请问楼主是怎么获取class文件所在的包名的?
我现在需要做一个增量功能,把一个class文件增量到服务器,目前我需要在上传文件的时候输入包名,但是有时候这个增量不是研发做,很容易写错这个路径。

晚风撩人 2017-09-30 1 楼

你需要的仅仅是一个反编译工具:jadclipse,通过这个小插件甚至是加密的类都能够反编译,而且在反编译过程中代码里有中文这样棘手的兼容问题都被它解决了。通过反编译把.class文件转变成.java文件,这样的话什么包你还不知道吗?

安装详情点击