启动GUI设计器时发生java.util.nosuchelementexception错误

启动GUI设计器时发生java.util.nosuchelementexception错误

问题描述:

我创建了一个新的Codename One项目。在src文件夹我创建了一个代号为一个表格:启动GUI设计器时发生java.util.nosuchelementexception错误

image showing project hierarchy

当我用鼠标右键单击窗体,然后选择代号一> GUI Builder中我得到这个消息:

null 
java.util.NoSuchElementException 
    at java.util.StringTokenizer.nextToken(StringTokenizer.java:349) 
    at com.codename1.plugin.intellij.actions.GUIBuilderAction.actionPerformed(GUIBuilderAction.java:48) 
    at com.intellij.openapi.actionSystem.ex.ActionUtil$1.run(ActionUtil.java:215) 
    at com.intellij.openapi.actionSystem.ex.ActionUtil.performActionDumbAware(ActionUtil.java:232) 
    at com.intellij.openapi.actionSystem.impl.ActionMenuItem$ActionTransmitter.lambda$actionPerformed$0(ActionMenuItem.java:309) 
    at com.intellij.openapi.wm.impl.FocusManagerImpl.runOnOwnContext(FocusManagerImpl.java:929) 
    at com.intellij.openapi.wm.impl.IdeFocusManagerImpl.runOnOwnContext(IdeFocusManagerImpl.java:136) 
    at com.intellij.openapi.actionSystem.impl.ActionMenuItem$ActionTransmitter.actionPerformed(ActionMenuItem.java:299) 
    at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2022) 
    at com.intellij.openapi.actionSystem.impl.ActionMenuItem.lambda$fireActionPerformed$0(ActionMenuItem.java:116) 
    at com.intellij.openapi.application.TransactionGuardImpl.runSyncTransaction(TransactionGuardImpl.java:86) 
    at com.intellij.openapi.application.TransactionGuardImpl.lambda$submitTransaction$1(TransactionGuardImpl.java:109) 
    at com.intellij.openapi.application.TransactionGuardImpl.submitTransaction(TransactionGuardImpl.java:118) 
    at com.intellij.openapi.application.TransactionGuard.submitTransaction(TransactionGuard.java:122) 
    at com.intellij.openapi.actionSystem.impl.ActionMenuItem.fireActionPerformed(ActionMenuItem.java:116) 
    at com.intellij.ui.plaf.beg.BegMenuItemUI.doClick(BegMenuItemUI.java:513) 
    at com.intellij.ui.plaf.beg.BegMenuItemUI.access$300(BegMenuItemUI.java:45) 
    at com.intellij.ui.plaf.beg.BegMenuItemUI$MyMouseInputHandler.mouseReleased(BegMenuItemUI.java:533) 
    at java.awt.Component.processMouseEvent(Component.java:6541) 
    at javax.swing.JComponent.processMouseEvent(JComponent.java:3324) 
    at java.awt.Component.processEvent(Component.java:6306) 
    at java.awt.Container.processEvent(Container.java:2236) 
    at java.awt.Component.dispatchEventImpl(Component.java:4897) 
    at java.awt.Container.dispatchEventImpl(Container.java:2294) 
    at java.awt.Component.dispatchEvent(Component.java:4719) 
    at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4888) 
    at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4525) 
    at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4466) 
    at java.awt.Container.dispatchEventImpl(Container.java:2280) 
    at java.awt.Window.dispatchEventImpl(Window.java:2746) 
    at java.awt.Component.dispatchEvent(Component.java:4719) 
    at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:764) 
    at java.awt.EventQueue.access$500(EventQueue.java:98) 
    at java.awt.EventQueue$3.run(EventQueue.java:715) 
    at java.awt.EventQueue$3.run(EventQueue.java:709) 
    at java.security.AccessController.doPrivileged(Native Method) 
    at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80) 
    at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:90) 
    at java.awt.EventQueue$4.run(EventQueue.java:737) 
    at java.awt.EventQueue$4.run(EventQueue.java:735) 
    at java.security.AccessController.doPrivileged(Native Method) 
    at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80) 
    at java.awt.EventQueue.dispatchEvent(EventQueue.java:734) 
    at com.intellij.ide.IdeEventQueue.defaultDispatchEvent(IdeEventQueue.java:827) 
    at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:651) 
    at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:365) 
    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) 

GUI生成器不启动。

我正在使用Java 8,这是全新安装的IntelliJ IDEA 2017.1.1,安装了Codename One插件,版本3.6.0。我在网上找不到任何东西来帮助我解决这个问题。 (我测试卸载该插件,而是在安装之前可用版本,3.5.3,什么都没有改变。)

下面是关于我的环境中一些统计数据:

$ uname -a 
Linux asus 3.16.0-4-amd64 #1 SMP Debian 3.16.39-1+deb8u2 (2017-03-07) x86_64 GNU/Linux 

$ cat /etc/debian_version 
8.7 

$ java -version 
java version "1.8.0_121" 
Java(TM) SE Runtime Environment (build 1.8.0_121-b13) 
Java HotSpot(TM) 64-Bit Server VM (build 25.121-b13, mixed mode) 

这似乎是this issue的情况下。这已被修复,应该是周五下一个插件更新的一部分。

+0

那会是版本3.6.2吗?我的IntelliJ IDEA更新了该版本的插件,但我在[Jetbrains插件页面](https://plugins.jetbrains.com/plugin/7357-codename-one)上找不到它,这有点奇怪。无论如何,如果你的意思是版本3.6.2它并没有为我解决任何问题。试图让这个工作起来的下一步是什么? –

+0

此外,您引用的问题似乎与编码字符的路径相关联。我不完全确定我们在这里讨论的是什么路径,但是我的项目目录的路径是这样的:'/ home/sentinel/IdeaProjects',所以没有什么特别的。 –