2016-02-14 70 views
0

JavaFX Scene Builder没有为我正确集成到IntelliJ IDE中。我把它运行在我的Windows 7电脑上,但在我的Mac上,它给我带来了问题。首先,当我将JavaFX场景构建器的路径指定到/ applications/scenbuilder /时,它不会在IDE中显示场景。其次,场景生成器独立启动,并且我在我的intelliJ项目中对.xml文件进行了修改,生成的所有.xml在IntelliJ中以红色错误显示,并显示“Can not resolve symbol”错误文本。带IntelliJ的javaFX sceneBuilder

是否有一个步骤,我很想在Mac上的IntelliJ中实现场景生成器。我不知道为什么这不起作用。我已经正确地遵循了设置。有没有其他人有这个问题?在的IntelliJ显示的错误是“java.lang.reflect.InvocationTargetException”

Java.lang.reflect.InvocationTargetException 
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
at java.lang.reflect.Method.invoke(Method.java:497) 
at org.jetbrains.plugins.javaFX.sceneBuilder.SceneBuilderCreatorImpl.create(SceneBuilderCreatorImpl.java:35) 
at org.jetbrains.plugins.javaFX.sceneBuilder.SceneBuilderEditor.addSceneBuilder(SceneBuilderEditor.java:204) 
at org.jetbrains.plugins.javaFX.sceneBuilder.SceneBuilderEditor.updateState(SceneBuilderEditor.java:191) 
at org.jetbrains.plugins.javaFX.sceneBuilder.SceneBuilderEditor.initSceneBuilder(SceneBuilderEditor.java:174) 
at org.jetbrains.plugins.javaFX.sceneBuilder.SceneBuilderEditor.selectNotify(SceneBuilderEditor.java:252) 
at com.intellij.openapi.fileEditor.impl.EditorComposite$1$1.run(EditorComposite.java:148) 
at com.intellij.openapi.command.impl.CoreCommandProcessor.executeCommand(CoreCommandProcessor.java:124) 
at com.intellij.openapi.command.impl.CoreCommandProcessor.executeCommand(CoreCommandProcessor.java:99) 
at com.intellij.openapi.command.impl.CoreCommandProcessor.executeCommand(CoreCommandProcessor.java:85) 
at com.intellij.openapi.fileEditor.impl.EditorComposite$1.selectionChanged(EditorComposite.java:154) 
at sun.reflect.GeneratedMethodAccessor34.invoke(Unknown Source) 
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
at java.lang.reflect.Method.invoke(Method.java:497) 
at com.intellij.util.messages.impl.MessageBusConnectionImpl.deliverMessage(MessageBusConnectionImpl.java:116) 
at com.intellij.util.messages.impl.MessageBusImpl.doPumpMessages(MessageBusImpl.java:368) 
at com.intellij.util.messages.impl.MessageBusImpl.pumpMessages(MessageBusImpl.java:355) 
at com.intellij.util.messages.impl.MessageBusImpl.pumpMessages(MessageBusImpl.java:341) 
at com.intellij.util.messages.impl.MessageBusImpl.sendMessage(MessageBusImpl.java:334) 
at com.intellij.util.messages.impl.MessageBusImpl.access$200(MessageBusImpl.java:42) 
at com.intellij.util.messages.impl.MessageBusImpl$2.invoke(MessageBusImpl.java:223) 
at com.sun.proxy.$Proxy81.selectionChanged(Unknown Source) 
at com.intellij.openapi.fileEditor.impl.EditorComposite$3.run(EditorComposite.java:229) 
at com.intellij.openapi.fileEditor.impl.FileEditorManagerImpl$15$1.run(FileEditorManagerImpl.java:1055) 
at com.intellij.openapi.wm.impl.FocusManagerImpl.a(FocusManagerImpl.java:672) 
at com.intellij.openapi.wm.impl.FocusManagerImpl.d(FocusManagerImpl.java:656) 
at com.intellij.openapi.wm.impl.FocusManagerImpl.f(FocusManagerImpl.java:626) 
at com.intellij.openapi.wm.impl.FocusManagerImpl.access$200(FocusManagerImpl.java:60) 
at com.intellij.openapi.wm.impl.FocusManagerImpl$11.run(FocusManagerImpl.java:522) 
at com.intellij.util.ui.UIUtil.invokeLaterIfNeeded(UIUtil.java:2361) 
at com.intellij.openapi.wm.impl.FocusManagerImpl.doWhenFocusSettlesDown(FocusManagerImpl.java:500) 
at com.intellij.openapi.wm.impl.FocusManagerImpl.doWhenFocusSettlesDown(FocusManagerImpl.java:495) 
at com.intellij.openapi.wm.impl.IdeFocusManagerImpl.doWhenFocusSettlesDown(IdeFocusManagerImpl.java:64) 
at com.intellij.openapi.fileEditor.impl.FileEditorManagerImpl$15.run(FileEditorManagerImpl.java:1052) 
at com.intellij.openapi.util.BusyObject$Impl$Simple.execute(BusyObject.java:123) 
at com.intellij.openapi.fileEditor.impl.FileEditorManagerImpl.notifyPublisher(FileEditorManagerImpl.java:1048) 
at com.intellij.openapi.fileEditor.impl.EditorComposite.a(EditorComposite.java:224) 
at com.intellij.openapi.fileEditor.impl.EditorComposite.access$600(EditorComposite.java:67) 
at com.intellij.openapi.fileEditor.impl.EditorComposite$MyChangeListener.stateChanged(EditorComposite.java:410) 
at com.intellij.ui.JBTabsPaneImpl.a(JBTabsPaneImpl.java:81) 
at com.intellij.ui.JBTabsPaneImpl.access$100(JBTabsPaneImpl.java:36) 
at com.intellij.ui.JBTabsPaneImpl$2.selectionChanged(JBTabsPaneImpl.java:67) 
at com.intellij.ui.tabs.impl.JBTabsImpl.fireSelectionChanged(JBTabsImpl.java:965) 
at com.intellij.ui.tabs.impl.JBTabsImpl.executeSelectionChange(JBTabsImpl.java:918) 
at com.intellij.ui.tabs.impl.JBTabsImpl._setSelected(JBTabsImpl.java:882) 
at com.intellij.ui.tabs.impl.JBTabsImpl.select(JBTabsImpl.java:864) 
at com.intellij.ui.tabs.impl.TabLabel$1.mousePressed(TabLabel.java:89) 
at java.awt.Component.processMouseEvent(Component.java:6532) 
at javax.swing.JComponent.processMouseEvent(JComponent.java:3324) 
at java.awt.Component.processEvent(Component.java:6300) 
at java.awt.Container.processEvent(Container.java:2236) 
at java.awt.Component.dispatchEventImpl(Component.java:4891) 
at java.awt.Container.dispatchEventImpl(Container.java:2294) 
at java.awt.Component.dispatchEvent(Component.java:4713) 
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4888) 
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4522) 
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4466) 
at java.awt.Container.dispatchEventImpl(Container.java:2280) 
at java.awt.Window.dispatchEventImpl(Window.java:2750) 
at java.awt.Component.dispatchEvent(Component.java:4713) 
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:758) 
at java.awt.EventQueue.access$500(EventQueue.java:97) 
at java.awt.EventQueue$3.run(EventQueue.java:709) 
at java.awt.EventQueue$3.run(EventQueue.java:703) 
at java.security.AccessController.doPrivileged(Native Method) 
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:76) 
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86) 
at java.awt.EventQueue$4.run(EventQueue.java:731) 
at java.awt.EventQueue$4.run(EventQueue.java:729) 
at java.security.AccessController.doPrivileged(Native Method) 
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:76) 
at java.awt.EventQueue.dispatchEvent(EventQueue.java:728) 
at com.intellij.ide.IdeEventQueue.c(IdeEventQueue.java:866) 
at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:650) 
at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:381) 
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) 
Caused by: java.lang.NoClassDefFoundError: javafx/fxml/FXMLLoader 
at org.jetbrains.plugins.javaFX.sceneBuilder.SceneBuilderKitWrapper.create(SceneBuilderKitWrapper.java:19) 
... 84 more 

回答

0

我有同样的问题(还有事,因为我没有时间去尝试修复它尚未),但这是什么支持回答了我:

请参阅https://youtrack.jetbrains.com/issue/IDEA-145806。当在捆绑的Java上运行 时,它将不起作用,因为我们的捆绑包不包含JavaFX类,因此它将在未来的更新中得到修复。您可以尝试运行股票Oracle JDK作为解决方法,请参阅 https://intellij-support.jetbrains.com/hc/articles/206544879 for 的详细信息。

+0

ok。我已经在win7上与场景制作师一起工作。在我的Mac上,我通过intelliJ初始设置下载了fx和idk。也许这是问题?我会尝试在oracle jdk下切换,就像你说的。谢谢 – Lukeriggz