當我在Linux平臺上運行我的應用程序時,它會拋出異常,並且無法在框架/面板中看到任何組件,相反,它會顯示灰色的屏幕,並且在單擊/移動鼠標時將顯示該組件指向組件之上。此外,我有動態測試更新按鈕,這也得到更新每個鼠標移動按鈕上方。重繪Linux平臺中的問題
注意:這個相同的應用程序在windows平臺下工作正常。
INFO | jvm 1 | main | 2013/01/21 15:14:23.995 | Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
INFO | jvm 1 | main | 2013/01/21 15:14:23.995 | at javax.swing.plaf.basic.BasicButtonUI.getMinimumSize(BasicButtonUI.java:352)
INFO | jvm 1 | main | 2013/01/21 15:14:23.995 | at javax.swing.JComponent.getMinimumSize(JComponent.java:1714)
INFO | jvm 1 | main | 2013/01/21 15:14:23.995 | at java.awt.BorderLayout.minimumLayoutSize(BorderLayout.java:651)
INFO | jvm 1 | main | 2013/01/21 15:14:23.995 | at java.awt.Container.minimumSize(Container.java:1651)
INFO | jvm 1 | main | 2013/01/21 15:14:23.995 | at java.awt.Container.getMinimumSize(Container.java:1636)
INFO | jvm 1 | main | 2013/01/21 15:14:23.996 | at javax.swing.JComponent.getMinimumSize(JComponent.java:1716)
INFO | jvm 1 | main | 2013/01/21 15:14:23.996 | at java.awt.FlowLayout.minimumLayoutSize(FlowLayout.java:448)
INFO | jvm 1 | main | 2013/01/21 15:14:23.996 | at java.awt.Container.minimumSize(Container.java:1651)
INFO | jvm 1 | main | 2013/01/21 15:14:23.996 | at java.awt.Container.getMinimumSize(Container.java:1636)
INFO | jvm 1 | main | 2013/01/21 15:14:23.996 | at javax.swing.JComponent.getMinimumSize(JComponent.java:1716)
INFO | jvm 1 | main | 2013/01/21 15:14:23.996 | at java.awt.GridBagLayout.GetLayoutInfo(GridBagLayout.java:1094)
INFO | jvm 1 | main | 2013/01/21 15:14:23.996 | at java.awt.GridBagLayout.getLayoutInfo(GridBagLayout.java:893)
INFO | jvm 1 | main | 2013/01/21 15:14:23.996 | at java.awt.GridBagLayout.ArrangeGrid(GridBagLayout.java:2052)
INFO | jvm 1 | main | 2013/01/21 15:14:23.996 | at java.awt.GridBagLayout.arrangeGrid(GridBagLayout.java:2008)
INFO | jvm 1 | main | 2013/01/21 15:14:23.996 | at java.awt.GridBagLayout.layoutContainer(GridBagLayout.java:789)
INFO | jvm 1 | main | 2013/01/21 15:14:23.996 | at java.awt.Container.layout(Container.java:1421)
INFO | jvm 1 | main | 2013/01/21 15:14:23.996 | at java.awt.Container.doLayout(Container.java:1410)
INFO | jvm 1 | main | 2013/01/21 15:14:23.996 | at java.awt.Container.validateTree(Container.java:1507)
INFO | jvm 1 | main | 2013/01/21 15:14:23.996 | at java.awt.Container.validateTree(Container.java:1513)
INFO | jvm 1 | main | 2013/01/21 15:14:23.996 | at java.awt.Container.validateTree(Container.java:1513)
INFO | jvm 1 | main | 2013/01/21 15:14:23.996 | at java.awt.Container.validateTree(Container.java:1513)
INFO | jvm 1 | main | 2013/01/21 15:14:23.996 | at java.awt.Container.validateTree(Container.java:1513)
INFO | jvm 1 | main | 2013/01/21 15:14:23.996 | at java.awt.Container.validate(Container.java:1480)
INFO | jvm 1 | main | 2013/01/21 15:14:23.996 | at javax.swing.RepaintManager.validateInvalidComponents(RepaintManager.java:669)
INFO | jvm 1 | main | 2013/01/21 15:14:23.996 | at javax.swing.SystemEventQueueUtilities$ComponentWorkRequest.run(SystemEventQueueUtilities.java:124)
INFO | jvm 1 | main | 2013/01/21 15:14:23.996 | at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
INFO | jvm 1 | main | 2013/01/21 15:14:23.996 | at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:642)
INFO | jvm 1 | main | 2013/01/21 15:14:23.996 | at java.awt.EventQueue.access$000(EventQueue.java:85)
INFO | jvm 1 | main | 2013/01/21 15:14:23.996 | at java.awt.EventQueue$1.run(EventQueue.java:603)
INFO | jvm 1 | main | 2013/01/21 15:14:23.996 | at java.awt.EventQueue$1.run(EventQueue.java:601)
INFO | jvm 1 | main | 2013/01/21 15:14:23.996 | at java.security.AccessController.doPrivileged(Native Method)
INFO | jvm 1 | main | 2013/01/21 15:14:23.996 | at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
INFO | jvm 1 | main | 2013/01/21 15:14:23.996 | at java.awt.EventQueue.dispatchEvent(EventQueue.java:612)
INFO | jvm 1 | main | 2013/01/21 15:14:23.996 | at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
INFO | jvm 1 | main | 2013/01/21 15:14:23.996 | at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
INFO | jvm 1 | main | 2013/01/21 15:14:23.996 | at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
INFO | jvm 1 | main | 2013/01/21 15:14:23.996 | at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
INFO | jvm 1 | main | 2013/01/21 15:14:23.996 | at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
INFO | jvm 1 | main | 2013/01/21 15:14:23.996 | at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
我們不是嚮導,向我們展示您的代碼。 – atomman
這似乎很模糊......也許嘗試從GUI中刪除東西的「標準」調試策略,直到它工作。然後你知道是什麼導致了這個問題。然後,如果谷歌搜索沒有直接給你答案,你可以編寫一個最小化的應用程序來重現錯誤,並在SO再次提問:「爲什麼這個代碼在Windows上工作,但在Linux上失敗」。 – hyde
你的課程在哪裏,這些只是看起來像錯誤的一部分,它只是swing和awt。 – Adude11