简体   繁体   English

生成本机访问失败

[英]Generate Native Access Fails

I am using Codename One trying to provide a way in my app to access the device mfg name and model number through a native interface. 我正在使用Codename One,试图在我的应用程序中提供一种通过本机界面访问设备制造商名称和型号的方法。 I watched the tutorial and it seems easy enough however I'm getting a NoClassDefFoundError when I right click on the interface and choose "Generate Native Access". 我看了教程,看起来很简单,但是当我右键单击界面并选择“ Generate Native Access”时,出现了NoClassDefFoundError I have tried a clean/compile and I still get the error. 我尝试了清理/编译,但仍然收到错误消息。 Can anyone out there provide any info on what this might be? 有人可以提供有关这可能是什么的任何信息吗? Here is the full stack trace: 这是完整的堆栈跟踪:

IllegalName: com/tsi/gpflow/NativeDeviceInfo 非法名称:com / tsi / gpflow / NativeDeviceInfo
java.lang.NoClassDefFoundError: IllegalName: com/tsi/gpflow/NativeDeviceInfo at java.lang.ClassLoader.preDefineClass(ClassLoader.java:654) at java.lang.ClassLoader.defineClass(ClassLoader.java:761) at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142) at java.net.URLClassLoader.defineClass(URLClassLoader.java:467) at java.net.URLClassLoader.access$100(URLClassLoader.java:73) at java.net.URLClassLoader$1.run(URLClassLoader.java:368) at java.net.URLClassLoader$1.run(URLClassLoader.java:362) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:361) at java.lang.ClassLoader.loadClass(ClassLoader.java:424) at java.lang.ClassLoader.loadClass(ClassLoader.java:357) at com.codename1.plugin.intellij.actions.GenerateNativeAccessAction$1.buildFinished(GenerateNativeAccessAction.java:51) at com.intellij.lang.ant.config.execution.AntBuildMessageView$6$1$1$1.run(AntBuildMessageView.java:819) at com.intellij.openapi java.lang.NoClassDefFoundError:非法名称:com / tsi / gpflow / NativeDeviceInfo at java.lang.ClassLoader.preDefineClass(ClassLoader.java:654)at java.lang.ClassLoader.defineClass(ClassLoader.java:761)at java.security。在java.net.URLClassLoader.defineClass(URLClassLoader.java:467)上的SecureClassLoader.defineClass(SecureClassLoader.java:142)在java.net.URLClassLoader.access $ 100(URLClassLoader.java:73)在java.net.URLClassLoader $ 1.run (URLClassLoader.java:368)at java.net.URLClassLoader $ 1.run(URLClassLoader.java:362)at java.security.AccessController.doPrivileged(Native Method)at java.net.URLClassLoader.findClass(URLClassLoader.java:361)在java.lang.ClassLoader.loadClass(ClassLoader.java:424)在com.codename1.plugin.intellij.actions.GenerateNativeAccessAction $ 1.buildFinished(GenerateNativeAccessAction.java :)在java.lang.ClassLoader.loadClass(ClassLoader.java:357) 51)在com.intellij.lang.ant.config.execution.AntBuildMessageView $ 6 $ 1 $ 1 $ 1.run(AntBuildMessageView.java:819)在com.intellij.openapi .vfs.newvfs.RefreshSessionImpl.fireEventsInWriteAction(RefreshSessionImpl.java:233) at com.intellij.openapi.vfs.newvfs.RefreshSessionImpl$1$1.run(RefreshSessionImpl.java:196) at com.intellij.openapi.application.impl.ApplicationImpl.runWriteAction(ApplicationImpl.java:1009) at com.intellij.openapi.vfs.newvfs.RefreshSessionImpl$1.run(RefreshSessionImpl.java:193) at com.intellij.openapi.vfs.newvfs.RefreshSessionImpl.fireEvents(RefreshSessionImpl.java:206) at com.intellij.openapi.vfs.newvfs.RefreshQueueImpl$1$1.run(RefreshQueueImpl.java:93) at com.intellij.openapi.application.impl.LaterInvocator$FlushQueue.runNextEvent(LaterInvocator.java:345) at com.intellij.openapi.application.impl.LaterInvocator$FlushQueue.run(LaterInvocator.java:329) at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:311) at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:756) at java.awt.EventQueue.access$500(EventQueue.java:97) at java.awt.EventQueue$3.run(EventQueue.java:709) at java.awt.EventQueu com.intellij.openapi.vfs.newvfs.RefreshSessionImpl.fireEventsInWriteAction(RefreshSessionImpl.java:233)在com.intellij.openapi.vfs.newvfs.RefreshSessionImpl $ 1 $ 1.run(RefreshSessionImpl.java:196)在com.intellij.openapi.application.impl。 .runWriteAction(ApplicationImpl.java:1009)位于com.intellij.openapi.vfs.newvfs.RefreshSessionImpl $ 1.run(RefreshSessionImpl.java:193)位于com.intellij.openapi.vfs.newvfs.RefreshSessionImpl.fireEvents(RefreshSessionImpl .: 206)com.intellij.openapi.application.impl.LaterInvocator $ FlushQueue.runNextEvent(LaterInvocator.java:345)com.intellij.openapi.vfs.newvfs.RefreshQueueImpl $ 1 $ 1.run(RefreshQueueImpl.java:93) .intellij.openapi.application.impl.LaterInvocator $ FlushQueue.run(LaterInvocator.java:329)at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:311)at java.awt.EventQueue.dispatchEventImpl(EventQueue.java) :756)at java.awt.EventQueue.access $ 500(EventQueue.java:97)at java.awt.EventQueue $ 3.run(EventQueue.java:709)at java.awt.EventQueu e$3.run(EventQueue.java:703) at java.security.AccessController.doPrivileged(Native Method) at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:76) at java.awt.EventQueue.dispatchEvent(EventQueue.java:726) at com.intellij.ide.IdeEventQueue.defaultDispatchEvent(IdeEventQueue.java:857) at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:658) at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:386) at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201) at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116) at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93) at java.awt.EventDispatchThread.run(EventDispatchThread.java:82) e $ 3.run(EventQueue.java:703)在java.security.AccessController.doPrivileged(本机方法)在java.security.ProtectionDomain $ JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:76)在java.awt.EventQueue.dispatchEvent(EventQueue) .java:726)com.intellij.ide.IdeEventQueue.defaultDispatchEvent(IdeEventQueue.java:857)com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:658)com.intellij.ide.IdeEventQueue.dispatchEvent( IdeEventQueue.java:java)上的java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)上的java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)上的java.awt.EventDispatchThread.pumpEventsForHierarchy(105) )在java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)在java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)在java.awt.EventDispatchThread.run(EventDispatchThread.java:82)

I see a bug there. 我在那里看到一个错误。 Unfortunately it seems we only tested this feature on Macs and some idiot (me) used File.separator instead of using the / symbol. 不幸的是,似乎我们只在Mac上测试了此功能,某些白痴(me)使用File.separator而不是使用/符号。 We'll fix that in the next plugin update which should be out Friday (hopefully). 我们将在下一个插件更新中修复该问题,该更新应该在星期五发布(希望如此)。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM