如何查看java class文件的jdk版本】的更多相关文章

方法1: 用二进制的查看方式打开该class文件,参考如下: 只看第一行数据,前面8个字节CA FE BA BE 是固定的,之后4个字节00 00 是次版本号,次版本号后面的4个字节(00 33)  是jdk的版本号. jdk版本号对应关系如下: 版本号 对应十进制 jdk版本号 2E 46 jdk1.2 2F 47 jdk1.3 30 48 jdk1.4 31 49 jdk1.5 32 50 jdk1.6 33 51 jdk1.7 34 52 jdk1.8 方法2: javap -verbos…
交代一下背景:公司运行的一个上线项目,打了个补丁发给客户后,反馈说运行不了.把源码拿回来场景重现.贴上报错信息: 08-15 14:13:29 ERROR doPost(jcm.framework.rmi.RMIServlet:155) - SchedulerService.forceRunJobFlow error. 未指定错误,请查看详细信息 at jcm.framework.rmi.ClientService.execute(ClientService.java:129) at ...(.…
错误:Unsupported major.minor version 51.0(jdk版本错误) 如果在win7下开发项目是使用的jdk版本和项目运行服务器jdk版本不同就会出现上面的问题. 用jdk7编译的class文件放到基于jdk6运行在tomcat之中,就会报这个错. 解决方法:因为很多linux系统还不支持jdk1.7,所以要尽量避免使用jdk1.7开发程序,我将win7下的jdk重装为jdk1.6,然后将项目的java compiler改为jdk1.6,对项目进行重新编译问题就解决了…
一.语言特性 计算机高级语言按程序的执行方式可分为:编译型和解释型两种.编译型的语言是指使用专门的编译器,针对特定的平台(操作系统)一次性翻译成被该平台硬件执行的机器码,并包装成该平台可执行性程序文件(.exe,.sh,.bat等),编译型的语言有C.C++等:解释型的语言是指使用专门的解释器对源程序逐行解释成特定平台的机器码并立即执行,可以认为每次执行解释型语言的程序都要进行一次编译. Java是一种特殊的高级语言,既有解释型语言的特点,也有编译型语言的特点.Java编写的程序需要经过编译步骤…
因为开发需要,两个工程分别需要使用jdk1.6(elipse indigo)和jdk1.8(eclipse neon).因为两个eclipse对于jdk版本的要求不同,若只在环境变量中配置jdk版本,会导致只有一个eclipse能够使用,为方便使用,在eclipse.ini文件首行中添加如下两行代码,指定jdk版本即可. -vm C:\work\Java\jdk1.8.0_141\bin\javaw.exe -startup plugins/org.eclipse.equinox.launche…
使用UtralEdit或者sublime text打开编译后的.class文件, 其中cafe babe为magic number(魔数),标识这个文件是java的class文件. 0033转换成10进制是51(3*16^1+3*16^0).而51则是jdk 1.7.(50是jdk1.6.49为jdk1.5) 而51就是jdk1.7的minor.major version. 延伸:: 下表既是minor.major version表…
版权声明:本文为博主原创文章,转载请注明本文链接.文章内容如有错误望能指正,以免误导更多人. https://blog.csdn.net/gnail_oug/article/details/471450471.事先编译好一个class文件,如:TestVersion.class 2.使用UltraEdit或Editplus打开class文件,我这里使用的editplus,如图: 3.打开时Encoding选择Hex viewer,以16进制方式显示 4.打开文件的内容如下: 5.只看第一行数据,…
经常有些软件有JRE或者JDK的版本要求,但怎么查询MAC上现在的JRE或JDK的版本呢?很简单,用这两个命令 这个是查询JRE的版本: $ java -version java version "1.6.0_22" Java(TM) SE Runtime Environment (build 1.6.0_22-b04-307-10M3261) Java HotSpot(TM) 64-Bit Server VM (build 17.1-b03-307, mixed mode) 这个是查…
昨晚下班回去,研究了下jocky1.0.3的使用,发现编译时提示引用类库版本不对,捣弄了半个小时后终于理解,原来是我的jdk1.7版本过高,这货是06年的版本,到现在都没更新过,支持(限制)的最高版本是5.0(1.5),对应的类文件版本号是49....通过逆向编译找了一个晚上,终于发现源代码中一段关键判断,但是又发现无法直接编译修改过的源文件(引用的类太多..),今天早上寻找了下直接编辑class文件的方法,在同事帮助下把相应的字节码段删去了,导入回包里面,测试了次,貌似运行没啥问题,混淆编译也…
Java Decompiler[java 反编译]:开发了反编译工具.能够方便查看*.class 文件源代码.以下介绍几种查看源代码的方式:工具&插件 1.JD-GUI JD-GUI  是显示java 源码 *.class文件的 图形界面工具.能够在这里下载:JD-GUI-DownLoad 下载下来后.打开该工具.直接将jar包 拖拽到 显示窗体就可以查看源码. 举例:通过 jd-gui.exe 工具 查看 xUtils-2.6.14.jar 包 源代码: watermark/2/text/aH…