2014-03-06 55 views
2

我正在与Proycon一起反编译.class到.java,包括jd-core-java-1.0.jar文件在我的库目录中,但是当我编译Main类时它抛出一个异常UnsatisfiedLinkError无法加载库

Exception in thread "main" java.lang.UnsatisfiedLinkError: 
Can't load library: D:\apps\dvlpr\lib/libjd-intellij.so 

print System.getProperty(“java.library.path”); 它outputed作为

C:\Program Files\Java\jdk1.7.0_01\bin; 
C:\Windows\Sun\Java\bin; 
C:\Windows\system32; 
C:\Windows; 
C:\Program Files (x86)\PC Connectivity Solution\; 
C:\Python33\; 
C:\Program Files\Common Files\Microsoft Shared\Windows Live; 
C:\Program Files (x86)\Common Files\Microsoft Shared\Windows Live; 
C:\Windows\system32; 
C:\Windows;C:\Windows\System32\Wbem; 
C:\Windows\System32\WindowsPowerShell\v1.0\; 
C:\Program Files (x86)\Windows Live\Shared; 
C:\Program Files (x86)\Toshiba\Bluetooth Toshiba Stack\sys\; 
C:\Program Files (x86)\Toshiba\Bluetooth Toshiba Stack\sys\x64\; 
C:\Program Files\nodejs\; 
C:\Program Files (x86)\Tesseract-OCR; 
C:\Program Files\Java\jdk1.7.0_01\bin; 
C:\Users\Shajeer\AppData\Roaming\npm;. 

我试过很多方法,比如设置类路径......,但都没有working.anybody请告诉我一个很好的方法。

我使用NetBeans IDE 7.4

+3

你确定你已经下载了Windows版本吗? 'libjd-intellij.so'看起来像一个Unix/Linux共享库,在Windows上应该是这样的'libjd-intellij.dll' –

+0

@Andreas https://github.com/nviennot/jd-core-java#usage只有一个版本可用。 – droidev

+1

看到你的链接:'但这个包装只支持Linux 64位' –

回答

2

根据评论中提供的链接,JD-核心的Java是薄的包装为Java反编译器,以支持的IntelliJ IDE插件。在Java反编译器本身支持:

  • 的Linux 32/64位
  • 的Windows 32/64位
  • 的Mac OSX 32 /在x86硬件

然而 64位, JD-Core-java目前的包装只支持Linux 64位

你有两个选择:

  • 联系作者,并要求Windows版本
  • 拉离到位桶和端口的本地代码到Windows构建Windows DLL的来源(和发回将被包括在未来版本的作者)
1

所有你需要做的是在JD-核心java.jar文件重命名jd-intellij.dlllibjd-intellij.dll。 (在META-INF \ nativelib \ win32 \ x86_64中)。