`
talentluke
  • 浏览: 604553 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

javap命令提示文件找不到

 
阅读更多

javap可以查看java编译器生成的字节码,反编译的是class文件,你要把classpath中加上.;表示class也在当前目录下,如果你没有设置classpath,jvm是根据classpath寻找.class文件的。即使在当前目录下它也会找不到。

 

javap   -c   Hello>Hello.bytecode

其中Hello是Hello.class文件

 

命令提示符下进入某个目录

cd /d d:

pushd d:

 

Java虚拟机(JVM)寻找Class的顺序

1. Bootstrap classes
属于Java 平台核心的class,比如java.lang.String等.及rt.jar等重要的核心级别的class.这是由JVM Bootstrap class loader来载入的.一般是放置在{java_home}\jre\lib目录下
2. Extension classes
基于Java扩展机制,用来扩展Java核心功能模块.比如Java串口通讯模块comm.jar.一般放置在{Java_home}\jre\lib\ext目录下
3. User classes
开发人员或其他第三方开发的Java程序包.通过命令行的-classpath或-cp,或者通过设置CLASSPATH环境变量来引用.JVM通过放置 在{java_home}\lib\tools.jar来寻找和调用用户级的class.常用的javac也是通过调用tools.jar来寻找用户指定 的路径来编译Java源程序.这样就引出了User class路径搜索的顺序或优先级别的问题.
 3.1 缺省值:调用Java或javawa的当前路径(.),是开发的class所存在的当前目录
 3.2 CLASSPATH环境变量设置的路径.如果设置了CLASSPATH,则CLASSPATH的值会覆盖缺省值
 3.3 执行Java的命令行-classpath或-cp的值,如果制定了这两个命令行参数之一,它的值会覆盖环境变量CLASSPATH的值
 3.4 -jar 选项:如果通过java -jar 来运行一个可执行的jar包,这当前jar包会覆盖上面所有的值.换句话说,-jar 后面所跟的jar包的优先级别最高,如果指定了-jar选项,所有环境变量和命令行制定的搜索路径都将被忽略.JVM APPClassloader将只会以jar包为搜索范围.

 

分享到:
评论

相关推荐

    windows命令行中java和javac、javap使用详解(java编译命令)

    ,那么需要使用-d选项来指定正确的输出路径,否则在尝试运行时会找不到相应的类。 2. java命令的用法:java命令用于运行.class文件。需要注意的是,如果源代码中声明了包,必须使用类的完整限定名来运行类。如果源...

    eclipse基本配置-快捷键-svn合并

    ### Eclipse 基本配置与快捷键详解 #### 一、Eclipse简介及基本配置 ...它提供了丰富的插件系统...通过掌握上述快捷键和命令提示符操作,开发者可以在Eclipse中更加高效地进行开发工作,并能更灵活地利用操作系统资源。

    21天学通java 高清版pdf

    设置完成后,可以通过命令提示符输入“java -version”等命令来检验JDK是否安装成功并且环境变量配置正确。 JDK中还包含了一系列常用的命令,比如javac用于编译Java程序,javap用于反编译class文件查看字节码,...

    21天学通JAVA.pdf

    Java的编译和运行涉及到一系列JDK提供的命令,包括但不限于: - javac:Java编译器,用于将.java源文件编译成.class字节码文件。 - java:Java运行时,用于运行编译后的.class文件。 - javap:Java反汇编器,用于...

    Java环境安装

    - **JRE**:Java Runtime Environment,即Java运行环境,仅包含运行Java应用程序所需的基本组件,不包括开发工具。 5. **编写并运行"Hello World"程序** - 编写代码:创建一个名为`HelloWorld.java`的文件,包含...

    21天学通JAVA(高清版)

    - **javap**: 将.class文件反编译为Java bytecode。 - **jdb**: Java调试工具。 - **jps**: 查看正在运行的Java虚拟机(JVM)的进程信息。 - **keytool**: 用于创建和管理密钥库(key store),常用于安全相关的配置。 -...

    java基础学习资料

    - `javap`: 反编译class文件,查看编译后的字节码。 - `jdb`: Java调试器,用于调试Java程序。 - `jps`: 查看正在运行的Java虚拟机进程的信息。 - `keytool`: 用于管理密钥和证书的工具。 - `jar`: 用于创建、...

    21天学通JAVA高清版(护眼绿豆沙底色版)

    - javap:反编译class文件,查看Java字节码。 - jdb:Java调试器,用于调试Java程序。 - jps:列出当前运行的Java进程。 - keytool:创建和管理keystore文件,用于Java安全认证。 - jar:打包Java应用程序的...

    21天学通JAVA(高清版).pdf

    - **`javap`**:反编译.class文件,查看字节码。 - **`jdb`**:Java调试工具。 - **`jps`**:列出所有正在运行的Java进程。 - **`keytool`**:管理和生成证书。 - **`jar`**:打包多个文件为一个JAR文件。 - *...

    一个Java程序员应该掌握的10项技能

    这通常涉及到对Java异常处理机制的理解,以及对日志文件的分析技巧。 #### 8. 思想 深入理解面向对象编程(OOP)的核心原则,如封装、继承、多态等。这些原则是Java设计的基础,遵循它们可以帮助开发者写出更加模块...

    21天学通java基础知识

    - **javap**:Java反汇编器,用于查看字节码文件的结构。 - **jdb**:Java调试器,用于调试Java应用程序。 - **jar**:Java归档工具,用于打包多个文件为单一的JAR文件。 - **javadoc**:Java文档生成工具,用于从源...

    21天学通JAVA(清晰版).pdf

    - **Path**:添加`%JAVA_HOME%\bin`到系统Path变量中,使得可以从任何位置运行JDK命令。 - **验证安装**:打开命令行工具,输入`java -version`和`javac -version`,如果能正确显示版本信息,则表示安装成功。 - ...

    jdk安装配置

    - 在不使用集成开发环境(IDE)的情况下,配置好系统环境变量是非常重要的,这可以让您在任何位置都能运行Java命令。主要涉及三个环境变量:JAVA_HOME、PATH和CLASSPATH。 - **JAVA_HOME** - **定义**:指向JDK的...

    21天学通JAVA

    - **PATH变量**: 将JDK的bin目录添加到系统的PATH环境变量中,以便可以在任何位置调用JDK命令。 - **JAVA_HOME变量**: 设置JAVA_HOME环境变量,其值为JDK的安装目录。 - **Classpath变量**: 虽然不是必须的,但在...

    64位linux和 windows版jdk8

    安装完成后,同样需要配置系统环境变量,确保Java可执行文件能够在命令提示符下被找到。在Windows环境下,可以通过系统属性中的“高级”选项卡来设置环境变量。 **总结** 无论是Linux还是Windows,JDK8都是Java...

Global site tag (gtag.js) - Google Analytics