使用jdk的javap命令可以检查class文件的编译信息,对java软件新旧版本并存时检查版本信息比较有用。
进入编译后的类文件主目录,输入命令,命令格式类似(类package-info.class,所在包com.test):
>javap -verbose F:\com\test\package-info.class
输出信息:
com/test/package-info.class
Last modified 2017-11-15; size 347 bytes
MD5 checksum 2e8541a841a4605a15e6baf5403ba5b9
Compiled from "package-info.java"
interface com.test.package-info
SourceFile: "package-info.java"
RuntimeVisibleAnnotations:
0: #8(#9=s#10,#11=e#12.#13)
minor version: 0
major version: 50
flags: ACC_INTERFACE, ACC_ABSTRACT, ACC_SYNTHETIC
Constant pool:
......
注:
=================================
major version:50 对应JDK1.6(十进制51对应jdk1.7,49对应jdk1.5,52对应jdk1.8)
==================================
或者以EMEDITOR以十六进制打开.class文件,查看第四个字节,0x32表示十进制50,即编译目标版本为jdk1.6
相关推荐
Java反编译工具是开发者和逆向工程人员在处理Java字节码时的重要工具,它能够将已编译的.class文件转换回可读性强的.java源代码文件。这对于理解类库的功能、学习代码实现或者在丢失源代码的情况下进行调试都极其...
1. **什么是Java反编译**: Java反编译是将Java字节码(`.class`文件)转换回源代码(`.java`文件)的过程。Java字节码是一种中间语言,由JVM(Java虚拟机)执行,而反编译就是尝试将这种二进制形式还原成人类可读...
这种错误通常发生在编译器版本与实际使用的JVM版本不匹配的情况下,比如使用了较新的Java编译器生成的`.class`文件在较旧的JVM上运行时就会触发此类异常。 #### 二、错误原因分析 该错误的主要原因是由于MyEclipse...
Java反编译是将已编译的字节码(.class文件)转换回源代码的过程,这在逆向工程、代码分析或者理解第三方库的工作原理时非常有用。在这个主题中,我们将深入探讨Java反编译的基本概念、常用工具以及如何使用它们。 ...
标题提到的“java.class反编译工具”就是这样一种实用的软件,它能够将.class文件转换回接近原始的Java源代码形式。 Java 类反编译通常是开发者进行逆向工程、学习库功能或者调试已有的二进制代码时需要用到的。...
在Java编程语言中,.class文件是编译后的字节码文件,它们包含了程序的机器不可读的形式。这些文件通常由Java源代码(.java文件)通过Java编译器(javac)转换得到。然而,有时我们需要查看或理解这些字节码文件中的...
Java反编译是Java开发中的一种技术,它用于查看或分析已经编译成字节码的`.class`文件中的源代码。这对于理解第三方库的工作原理、调试或逆向工程非常有用。当我们没有原始的`.java`源代码时,反编译工具可以帮助...
总之,反编译Java.class文件是一项重要的技术,它在软件开发、分析和教育中扮演着不可或缺的角色。通过使用如JD-GUI这样的工具,我们可以深入理解Java字节码背后的逻辑,进一步提升我们的编程技能和问题解决能力。
在Java程序执行过程中,源代码(.java文件)会被编译成字节码(.class文件),这是一种二进制格式,可以在任何支持Java的平台上运行。然而,有时开发者可能需要查看或理解已经编译过的.class文件中的代码,这时就...
在Java编程领域,.class文件是Java源代码经过编译后的二进制形式,它包含了程序的字节码,是Java虚拟机(JVM)执行的基石。然而,由于.class文件是二进制格式,普通用户无法直接阅读其内容。这时,我们就需要借助于...
3. **反编译**:根据字节码,生成对应的Java源代码。 4. **输出**:将反编译后的源代码写入到指定的目录下,文件名通常基于原始的类名。 值得注意的是,由于反编译过程中可能丢失注释、原始变量名和部分元数据,反...
在Java编程环境中,有时我们需要在程序运行时动态地编译.java源代码文件并执行新生成的类。这种功能在处理代码生成、插件系统或测试自动化等场景中非常有用。本篇文章将深入探讨如何实现Java的动态编译与运行。 1. ...
### 反编译Class文件至Java源码 #### 概述 反编译是指将编译后的二进制代码(如Java的`.class`文件)转换回接近原始源代码的过程。这种技术对于软件逆向工程、理解开源项目、调试、修复错误以及学习他人的编码技巧...
Java Class文件是Java程序经过编译后的二进制表示形式,它是Java虚拟机(JVM)执行的基础。本文将深入探讨Java类文件的结构、编译过程以及如何使用提供的工具进行查看。 一、Java类文件结构 Java源代码(.java文件...
这个压缩包`class文件编译器.zip`很可能包含了关于如何将Java源代码编译成`.class`文件的相关工具和信息。`ReadMe.txt`可能是提供编译过程的说明或者编译器使用的指南。 1. **Java源代码与Class文件**: Java源...
Java反编译是编程领域中一个重要的技术环节,它允许开发者查看和理解已经编译成字节码(.class文件)的Java程序的原始源代码。这种能力在多种情况下非常有用,例如,当我们需要分析开源软件的实现细节,或者当我们...
在Java编程语言中,.class文件是Java源代码经过编译后的二进制形式,它包含了执行Java程序所需的所有信息。然而,有时我们可能需要查看这些编译后的类文件的源代码,例如为了理解第三方库的工作原理或者进行逆向工程...
5. **IntelliJ IDEA / Eclipse**:这些流行的Java集成开发环境(IDE)也内置了反编译功能,可以直接在IDE内查看库的源代码,即使这些库只提供了.jar或.class文件。 了解并掌握这些反编译工具的使用,有助于开发者在...
-nodos -不要去检查class文件是否以dos方式写 (CR before NL, default: check) -nocast - 不要生成辅助文件 -nocode -不要生成方法的源代码 -noconv - 不要转换java的定义符 (default: do) -...