2011-09-03 138 views
1

所以我想让lejos(lego机器人的软件)在我的eclipse中工作,但是当我点击eclipse工具栏中的lejos nxj项并选择上传固件我收到以下错误在eclipse中安装lejos插件(无法加载jfantom.dll)

Building firmware image. 
VM file: C:\Program Files (x86)\leJOS NXJ\bin\lejos_nxt_rom.bin 
Menu file: C:\Program Files (x86)\leJOS NXJ\bin\StartUpText.bin 
Magic string found at offset 0x40 
VM size: 55712 bytes. 
Menu size: 44132 bytes. 
Total image size 99940/100352 bytes. 
Locating device in firmware update mode. 
flashing the firmware failed 
lejos.pc.comm.NXTCommException: cannot load library C:\Program Files (x86)\leJOS NXJ\lib\pc\native\jfantom.dll 
Caused by lejos.util.jni.JNIException: cannot load library C:\Program Files (x86)\leJOS NXJ\lib\pc\native\jfantom.dll 
Caused by java.lang.UnsatisfiedLinkError: C:\Program Files (x86)\leJOS NXJ\lib\pc\native\jfantom.dll: Can't find dependent libraries 
See Eclipse error log for detailed stack trace. 

任何人都有一个想法是怎么回事。我检查目录和文件是存在的...... 这是日志文件从蚀

!SESSION 2011-09-03 13:11:11.541 ----------------------------------------------- 
eclipse.buildId=I20110613-1736 
java.version=1.6.0_26 
java.vendor=Sun Microsystems Inc. 
BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=en_US 
Command-line arguments: -os win32 -ws win32 -arch x86_64 

!ENTRY org.eclipse.ui 4 4 2011-09-03 13:23:11.783 
!MESSAGE Invalid preference page path: XML Syntax 
!SESSION 2011-09-03 13:23:13.777 ----------------------------------------------- 
eclipse.buildId=I20110613-1736 
java.version=1.6.0_26 
java.vendor=Sun Microsystems Inc. 
BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=en_US 
Command-line arguments: -os win32 -ws win32 -arch x86_64 

!ENTRY org.lejos.nxt.ldt 4 0 2011-09-03 13:29:50.136 
!MESSAGE library jfantom.dll (windows/x86_64) was not found in C:\Program Files (x86)\leJOS NXJ\lib\pc\native 
!STACK 0 
lejos.pc.comm.NXTCommException: library jfantom.dll (windows/x86_64) was not found in C:\Program Files (x86)\leJOS NXJ\lib\pc\native 
    at lejos.pc.comm.NXTCommFactory.createNXTComm(NXTCommFactory.java:64) 
    at lejos.pc.comm.NXTSamba.search(NXTSamba.java:134) 
    at lejos.pc.tools.NXJFlashUpdate.openSambaDevice(NXJFlashUpdate.java:209) 
    at lejos.pc.tools.NXJFlash.openDevice(NXJFlash.java:65) 
    at lejos.pc.tools.NXJFlash.run(NXJFlash.java:142) 
    at lejos.pc.tools.NXJFlash.start(NXJFlash.java:191) 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) 
    at java.lang.reflect.Method.invoke(Unknown Source) 
    at org.lejos.nxt.ldt.util.LeJOSNXJUtil.invokeTool(LeJOSNXJUtil.java:400) 
    at org.lejos.nxt.ldt.actions.UploadFirmwareAction.flashFirmware(UploadFirmwareAction.java:58) 
    at org.lejos.nxt.ldt.actions.UploadFirmwareAction.access$0(UploadFirmwareAction.java:44) 
    at org.lejos.nxt.ldt.actions.UploadFirmwareAction$1.run(UploadFirmwareAction.java:37) 
    at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54) 
Caused by: lejos.util.jni.JNIException: library jfantom.dll (windows/x86_64) was not found in C:\Program Files (x86)\leJOS NXJ\lib\pc\native 
    at lejos.util.jni.JNILoader.loadLibrary(JNILoader.java:117) 
    at lejos.pc.comm.NXTCommFantom.initialize0(NXTCommFantom.java:89) 
    at lejos.pc.comm.NXTCommFantom.initialize(NXTCommFantom.java:96) 
    at lejos.pc.comm.NXTCommFactory.newNXTCommInstance(NXTCommFactory.java:92) 
    at lejos.pc.comm.NXTCommFactory.createNXTComm(NXTCommFactory.java:62) 
    ... 14 more 

!ENTRY org.lejos.nxt.ldt 4 0 2011-09-03 13:30:42.966 
!MESSAGE library jfantom.dll (windows/x86_64) was not found in C:\Program Files (x86)\leJOS NXJ\lib\pc\native 
!STACK 0 
lejos.pc.comm.NXTCommException: library jfantom.dll (windows/x86_64) was not found in C:\Program Files (x86)\leJOS NXJ\lib\pc\native 
    at lejos.pc.comm.NXTCommFactory.createNXTComm(NXTCommFactory.java:64) 
    at lejos.pc.comm.NXTSamba.search(NXTSamba.java:134) 
    at lejos.pc.tools.NXJFlashUpdate.openSambaDevice(NXJFlashUpdate.java:209) 
    at lejos.pc.tools.NXJFlash.openDevice(NXJFlash.java:65) 
    at lejos.pc.tools.NXJFlash.run(NXJFlash.java:142) 
    at lejos.pc.tools.NXJFlash.start(NXJFlash.java:191) 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) 
    at java.lang.reflect.Method.invoke(Unknown Source) 
    at org.lejos.nxt.ldt.util.LeJOSNXJUtil.invokeTool(LeJOSNXJUtil.java:400) 
    at org.lejos.nxt.ldt.actions.UploadFirmwareAction.flashFirmware(UploadFirmwareAction.java:58) 
    at org.lejos.nxt.ldt.actions.UploadFirmwareAction.access$0(UploadFirmwareAction.java:44) 
    at org.lejos.nxt.ldt.actions.UploadFirmwareAction$1.run(UploadFirmwareAction.java:37) 
    at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54) 
Caused by: lejos.util.jni.JNIException: library jfantom.dll (windows/x86_64) was not found in C:\Program Files (x86)\leJOS NXJ\lib\pc\native 
    at lejos.util.jni.JNILoader.loadLibrary(JNILoader.java:117) 
    at lejos.pc.comm.NXTCommFantom.initialize0(NXTCommFantom.java:89) 
    at lejos.pc.comm.NXTCommFantom.initialize(NXTCommFantom.java:96) 
    at lejos.pc.comm.NXTCommFactory.newNXTCommInstance(NXTCommFactory.java:92) 
    at lejos.pc.comm.NXTCommFactory.createNXTComm(NXTCommFactory.java:62) 
    ... 14 more 

!ENTRY org.lejos.nxt.ldt 4 0 2011-09-03 13:31:04.653 
!MESSAGE library jfantom.dll (windows/x86_64) was not found in C:\Program Files (x86)\leJOS NXJ\lib\pc\native 
!STACK 0 
lejos.pc.comm.NXTCommException: library jfantom.dll (windows/x86_64) was not found in C:\Program Files (x86)\leJOS NXJ\lib\pc\native 
    at lejos.pc.comm.NXTCommFactory.createNXTComm(NXTCommFactory.java:64) 
    at lejos.pc.comm.NXTSamba.search(NXTSamba.java:134) 
    at lejos.pc.tools.NXJFlashUpdate.openSambaDevice(NXJFlashUpdate.java:209) 
    at lejos.pc.tools.NXJFlash.openDevice(NXJFlash.java:65) 
    at lejos.pc.tools.NXJFlash.run(NXJFlash.java:142) 
    at lejos.pc.tools.NXJFlash.start(NXJFlash.java:191) 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) 
    at java.lang.reflect.Method.invoke(Unknown Source) 
    at org.lejos.nxt.ldt.util.LeJOSNXJUtil.invokeTool(LeJOSNXJUtil.java:400) 
    at org.lejos.nxt.ldt.actions.UploadFirmwareAction.flashFirmware(UploadFirmwareAction.java:58) 
    at org.lejos.nxt.ldt.actions.UploadFirmwareAction.access$0(UploadFirmwareAction.java:44) 
    at org.lejos.nxt.ldt.actions.UploadFirmwareAction$1.run(UploadFirmwareAction.java:37) 
    at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54) 
Caused by: lejos.util.jni.JNIException: library jfantom.dll (windows/x86_64) was not found in C:\Program Files (x86)\leJOS NXJ\lib\pc\native 
    at lejos.util.jni.JNILoader.loadLibrary(JNILoader.java:117) 
    at lejos.pc.comm.NXTCommFantom.initialize0(NXTCommFantom.java:89) 
    at lejos.pc.comm.NXTCommFantom.initialize(NXTCommFantom.java:96) 
    at lejos.pc.comm.NXTCommFactory.newNXTCommInstance(NXTCommFactory.java:92) 
    at lejos.pc.comm.NXTCommFactory.createNXTComm(NXTCommFactory.java:62) 
    ... 14 more 

!ENTRY org.lejos.nxt.ldt 4 0 2011-09-03 13:37:49.689 
!MESSAGE cannot load library C:\Program Files (x86)\leJOS NXJ\lib\pc\native\jfantom.dll 
!STACK 0 
lejos.pc.comm.NXTCommException: cannot load library C:\Program Files (x86)\leJOS NXJ\lib\pc\native\jfantom.dll 
    at lejos.pc.comm.NXTCommFactory.createNXTComm(NXTCommFactory.java:64) 
    at lejos.pc.comm.NXTSamba.search(NXTSamba.java:134) 
    at lejos.pc.tools.NXJFlashUpdate.openSambaDevice(NXJFlashUpdate.java:209) 
    at lejos.pc.tools.NXJFlash.openDevice(NXJFlash.java:65) 
    at lejos.pc.tools.NXJFlash.run(NXJFlash.java:142) 
    at lejos.pc.tools.NXJFlash.start(NXJFlash.java:191) 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) 
    at java.lang.reflect.Method.invoke(Unknown Source) 
    at org.lejos.nxt.ldt.util.LeJOSNXJUtil.invokeTool(LeJOSNXJUtil.java:400) 
    at org.lejos.nxt.ldt.actions.UploadFirmwareAction.flashFirmware(UploadFirmwareAction.java:58) 
    at org.lejos.nxt.ldt.actions.UploadFirmwareAction.access$0(UploadFirmwareAction.java:44) 
    at org.lejos.nxt.ldt.actions.UploadFirmwareAction$1.run(UploadFirmwareAction.java:37) 
    at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54) 
Caused by: lejos.util.jni.JNIException: cannot load library C:\Program Files (x86)\leJOS NXJ\lib\pc\native\jfantom.dll 
    at lejos.util.jni.JNILoader.loadLibrary(JNILoader.java:112) 
    at lejos.pc.comm.NXTCommFantom.initialize0(NXTCommFantom.java:89) 
    at lejos.pc.comm.NXTCommFantom.initialize(NXTCommFantom.java:96) 
    at lejos.pc.comm.NXTCommFactory.newNXTCommInstance(NXTCommFactory.java:92) 
    at lejos.pc.comm.NXTCommFactory.createNXTComm(NXTCommFactory.java:62) 
    ... 14 more 
Caused by: java.lang.UnsatisfiedLinkError: C:\Program Files (x86)\leJOS NXJ\lib\pc\native\jfantom.dll: Can't find dependent libraries 
    at java.lang.ClassLoader$NativeLibrary.load(Native Method) 
    at java.lang.ClassLoader.loadLibrary0(Unknown Source) 
    at java.lang.ClassLoader.loadLibrary(Unknown Source) 
    at java.lang.Runtime.load0(Unknown Source) 
    at java.lang.System.load(Unknown Source) 
    at lejos.util.jni.JNILoader.loadLibrary(JNILoader.java:103) 
    ... 18 more 

回答

2
  • 你安装LeJOS的软件套件的内容?
  • 它是否完全安装?
  • 您是否将日食指向正确的32位JDK/JRE?
  • 您是否安装了幻影驱动程序?

eclipse/window/preferences/leJOS NXJ_HOME指向leJOS的正确目录吗?

+0

删除我的64位JRE为我做了。我没有太多使用Eclipse/Java,所以我采用了nuke方法 – narthur157