2011-08-17 68 views
0

我已經使用JD GUI Java反編譯器反編譯jar文件。只有一個文件包含不包含實際的Java代碼它包含字節代碼....如何擺脫這一點?反編譯後我的Java文件包含字節代碼

public String loginAtStartup(String cmd, String dn, String loginId, 
String passwd, String tserver, String port, int retry) { 

// Byte code: 
    // 0: getstatic 
84\011com/ibm/nisource/softphone/SoftPhone:log\011Lorg/apache/log4j/Logger; 
    // 3: new 196\011java/lang/StringBuffer 
    // 6: dup 
    // 7: ldc_w 439 
    // 10: invokespecial 
201\011java/lang/StringBuffer:<init>\011(Ljava/lang/String;)V 
    // 13: getstatic 
72\011com/ibm/nisource/softphone/SoftPhone:props\011Ljava/util/Properties; 
    // 16: ldc_w 441 
    // 19: invokevirtual 
185\011java/util/Properties:getProperty\011(Ljava/lang/String;)Ljava/lang/String; 
    // 22: invokevirtual 
205\011java/lang/StringBuffer:append\011(Ljava/lang/String;)Ljava/lang/StringBuffer; 
    // 25: ldc_w 443 
    // 28: invokevirtual 
205\011java/lang/StringBuffer:append\011(Ljava/lang/String;)Ljava/lang/StringBuffer; 

我想要java代碼而不是這...爲什麼這個字節碼沒有轉換爲Java代碼?以及如何從這個Java代碼?

回答

3

這可能是.class文件已被obfuscated和一些反編譯器混淆,當他們看到混淆的代碼,並且無法正確反編譯.class文件。

+0

那麼任何解決方案?? – 2011-08-17 10:39:04