首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用javap

如何使用javap
EN

Stack Overflow用户
提问于 2012-07-12 01:49:53
回答 5查看 42.9K关注 0票数 16

我一定是在做一些愚蠢的事情,因为这看起来像是一个如此简单的操作。由于某些原因,我就是不能让这个命令为我工作。我已经安装了JDK,现在我进入

代码语言:javascript
复制
/bin

文件夹。我输入:

代码语言:javascript
复制
./javap -classpath /home/Matt/workspace/VariablesTestProject/src/ -s VariablesTest.Variable

我的类的实际文件路径是

代码语言:javascript
复制
/home/Matt/workspace/VariablesTestProject/src/VariablesTest/Variable.java

我得到的错误是:

代码语言:javascript
复制
ERROR:Could not find VariablesTest.Variable

但是,像这样的命令是有效的:

代码语言:javascript
复制
./javap -s java.lang.String

这些并不是我尝试过的唯一命令。我确实尝试了我能想到的所有变体,但它们都不起作用。我的javac和java命令都工作得很好。

有什么建议吗?

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2012-07-12 01:53:17

Javap在.class字节码上工作。因此,将类路径指向VariablesTestProject/out或其他什么。

票数 13
EN

Stack Overflow用户

发布于 2013-04-02 18:00:52

如果您希望使用javap命令执行操作,请首先转到cmd提示符中的jar位置。

例如:

cd /usr/lib/jvm/java-6-openjdk-i386/jre/lib (Linux)

cd D:\javasoftware\Java\jdk1.6.0_43\jre\lib (视窗)

上面的位置是rt.jar的位置。java.lang.String是这个jar中的一个类。

使用javap,你可以从这个类中获取信息。

例如:

代码语言:javascript
复制
cd /usr/lib/jvm/java-6-openjdk-i386/jre/lib
javap java.lang.String 
票数 3
EN

Stack Overflow用户

发布于 2018-10-01 23:10:56

最近我发现javap的一个用法是检查哪个版本的JDk编译了一个特定的类文件:

代码语言:javascript
复制
javap -v path to .class file | findstr major

这将为您提供主版本号:

50 - JDK6,51 - JDK7,52 - JDK8,53 -JDK9。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11438492

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档