北电SNMP V3的基本配置
2010-11-21 20:11
134 查看
近期项目中需要反编译修改多年前的class文件,经过反编译并修改后,用Eclipse编译和java命令行得到的class文件不同,对新class文件反编译后如下:
用Eclipse编译的class文件反编译:
[/code]
用java命令行执行(如图):
C:\j2sdk1.4.2_16\bin>javac
–classpath .;kpimodelbuild.jar;commons-logging.jar;kpimodel.jar;commons-digester.jar;sax.jar;zhibiaoutil.jar
BasKpiDefineDaoXmlImpl.java
对用命令行新生成的class反编译:
经比对,Eclipse生成的对应的public static final String 静态常量的值在反编译后都没有了,而使用java命令行的反编译后正常。
问题找到了,但是原因未知。
用Eclipse编译的class文件反编译:
package com.langchao.kpiengine.builder.baskpi; import com.langchao.kpiengine.model.common.BasDimensionType; import com.langchao.kpiengine.model.common.Kpi; import com.langchao.kpiengine.model.common.KpiRelation; import com.langchao.kpiengine.model.common.UnitKpi; import com.langchao.kpiengine.search.BasKpiDefine; import com.langchao.kpiengine.util.KpiConfigHelper; import com.langchao.kpiengine.xml.digester.DigesterUtil; import com.langchao.kpiengine.xml.digester.KpiDigester; import com.langchao.kpiengine.xml.digester.KpiDigesterFactory; import java.util.ArrayList; import java.util.Collection; import java.util.Iterator; import java.util.List; import java.util.Map; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; public class BasKpiDefineDaoXmlImpl implements BasKpiDefineDao { private static Log log = LogFactory.getLog("KpiQueryService"); public static final String RULE_CONFIG; public static final String DEFINE_CONFIG; private BasKpiDefine basKpiDefine; static Class class$0; // ERROR // static { // Byte code: // 0: ldc 20 // 2: invokestatic 22 org/apache/commons/logging/LogFactory:getLog (Ljava/lang/String;)Lorg/apache/commons/logging/Log; // 5: putstatic 28 com/langchao/kpiengine/builder/baskpi/BasKpiDefineDaoXmlImpl:log Lorg/apache/commons/logging/Log; // 8: new 30 java/lang/StringBuffer // 11: dup // 12: getstatic 32 com/langchao/kpiengine/builder/baskpi/BasKpiDefineDaoXmlImpl:class$0 Ljava/lang/Class; // 15: dup // 16: ifnonnull +28 -> 44 // 19: pop // 20: ldc 34 // 22: invokestatic 36 java/lang/Class:forName (Ljava/lang/String;)Ljava/lang/Class; // 25: dup // 26: putstatic 32 com/langchao/kpiengine/builder/baskpi/BasKpiDefineDaoXmlImpl:class$0 Ljava/lang/Class; // 29: goto +15 -> 44 // 32: new 42 java/lang/NoClassDefFoundError // 35: dup_x1 // 36: swap // 37: invokevirtual 44 java/lang/Throwable:getMessage ()Ljava/lang/String; // 40: invokespecial 50 java/lang/NoClassDefFoundError:<init> (Ljava/lang/String;)V // 43: athrow // 44: invokevirtual 54 java/lang/Class:getPackage ()Ljava/lang/Package; // 47: invokevirtual 58 java/lang/Package:getName ()Ljava/lang/String; // 50: invokestatic 63 java/lang/String:valueOf (Ljava/lang/Object;)Ljava/lang/String; // 53: invokespecial 69 java/lang/StringBuffer:<init> (Ljava/lang/String;)V // 56: ldc 70 // 58: invokevirtual 72 java/lang/StringBuffer:append (Ljava/lang/String;)Ljava/lang/StringBuffer; // 61: invokevirtual 76 java/lang/StringBuffer:toString ()Ljava/lang/String; // 64: putstatic 79 com/langchao/kpiengine/builder/baskpi/BasKpiDefineDaoXmlImpl:RULE_CONFIG Ljava/lang/String; // 67: new 30 java/lang/StringBuffer // 70: dup // 71: getstatic 32 com/langchao/kpiengine/builder/baskpi/BasKpiDefineDaoXmlImpl:class$0 Ljava/lang/Class; // 74: dup // 75: ifnonnull +28 -> 103 // 78: pop // 79: ldc 34 // 81: invokestatic 36 java/lang/Class:forName (Ljava/lang/String;)Ljava/lang/Class; // 84: dup // 85: putstatic 32 com/langchao/kpiengine/builder/baskpi/BasKpiDefineDaoXmlImpl:class$0 Ljava/lang/Class; // 88: goto +15 -> 103 // 91: new 42 java/lang/NoClassDefFoundError // 94: dup_x1 // 95: swap // 96: invokevirtual 44 java/lang/Throwable:getMessage ()Ljava/lang/String; // 99: invokespecial 50 java/lang/NoClassDefFoundError:<init> (Ljava/lang/String;)V // 102: athrow // 103: invokevirtual 81 java/lang/Class:getName ()Ljava/lang/String; // 106: invokestatic 63 java/lang/String:valueOf (Ljava/lang/Object;)Ljava/lang/String; // 109: invokespecial 69 java/lang/StringBuffer:<init> (Ljava/lang/String;)V // 112: ldc 82 // 114: invokevirtual 72 java/lang/StringBuffer:append (Ljava/lang/String;)Ljava/lang/StringBuffer; // 117: invokevirtual 76 java/lang/StringBuffer:toString ()Ljava/lang/String; // 120: putstatic 84 com/langchao/kpiengine/builder/baskpi/BasKpiDefineDaoXmlImpl:DEFINE_CONFIG Ljava/lang/String; // 123: return // // Exception table: // from to target type // 20 25 32 java/lang/ClassNotFoundException // 79 84 91 java/lang/ClassNotFoundException }
[/code]
用java命令行执行(如图):
C:\j2sdk1.4.2_16\bin>javac
–classpath .;kpimodelbuild.jar;commons-logging.jar;kpimodel.jar;commons-digester.jar;sax.jar;zhibiaoutil.jar
BasKpiDefineDaoXmlImpl.java
对用命令行新生成的class反编译:
package com.langchao.kpiengine.builder.baskpi; import com.langchao.kpiengine.model.common.BasDimensionType; import com.langchao.kpiengine.model.common.Kpi; import com.langchao.kpiengine.model.common.KpiRelation; import com.langchao.kpiengine.model.common.UnitKpi; import com.langchao.kpiengine.search.BasKpiDefine; import com.langchao.kpiengine.util.KpiConfigHelper; import com.langchao.kpiengine.xml.digester.DigesterUtil; import com.langchao.kpiengine.xml.digester.KpiDigester; import com.langchao.kpiengine.xml.digester.KpiDigesterFactory; import java.util.ArrayList; import java.util.Collection; import java.util.Iterator; import java.util.List; import java.util.Map; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; public class BasKpiDefineDaoXmlImpl implements BasKpiDefineDao { private static Log log = LogFactory.getLog("KpiQueryService"); public static final String RULE_CONFIG = BasKpiDefineDaoXmlImpl.class.getPackage().getName() + ".ruleconfig"; public static final String DEFINE_CONFIG = BasKpiDefineDaoXmlImpl.class.getName() + ".defineconfig"; private BasKpiDefine basKpiDefine;
经比对,Eclipse生成的对应的public static final String 静态常量的值在反编译后都没有了,而使用java命令行的反编译后正常。
问题找到了,但是原因未知。
相关文章推荐
- SNMP的基本配置实例
- Net-SNMP V3协议 安装配置笔记(CentOS 6.3/5.6)
- Net-SNMP(V3协议)安装配置笔记(CentOS 5.2)(转)
- net-snmp配置:snmp v3的安全配置
- Net-SNMP(V3协议)安装配置笔记
- H3C设备与中兴89系列交换机snmp V3配置模板与kali snmpwalk配套测试
- Net-Snmp配置与基本入门学习笔记
- 几款网络设备配置SNMP V3协议监控网络
- 华为设备SNMP V3配置
- nginx 最基本配置用法
- Spring3 MVC 注解---注解基本配置及@controller和 @RequestMapping 常用解释
- maven的安装和eclipse的配置以及构建mahout基本项目
- MySQL--物理文件组成基本配置详解
- dhcp基本配置
- HighCharts基本配置
- Squid 基本配置
- linux下安装redis+redis主从配置+redis基本命令
- git基本配置与使用总结