0
に私はopenjdk-8-jdk-armhf
とヘッドレスLinuxマシンを実行していると私は自分のアプリケーションを実行すると、NPE新しいJPanelの()を呼び出すと、ヘッドレス(RepaintManager.currentManager)
METRICS = new JPanel().getFontMetrics(FONT);
ラインが戻っRepaintManager.currentManager(RepaintManager.java:262)
に到達NullPointerExceptionがスロー、これは次のようになります。次のように
public static RepaintManager currentManager(Component c) {
// Note: DisplayChangedRunnable passes in null as the component, so if
// component is ever used to determine the current
// RepaintManager, DisplayChangedRunnable will need to be modified
// accordingly.
return currentManager(AppContext.getAppContext());
}
完全なトレースは次のとおりです。
java.lang.NullPointerException
at javax.swing.RepaintManager.currentManager(RepaintManager.java:262)
at javax.swing.JComponent.repaint(JComponent.java:4799)
at java.awt.Component.repaint(Component.java:3303)
at javax.swing.JComponent.setFont(JComponent.java:2756)
at javax.swing.LookAndFeel.installColorsAndFont(LookAndFeel.java:208)
at javax.swing.plaf.basic.BasicPanelUI.installDefaults(BasicPanelUI.java:66)
at javax.swing.plaf.basic.BasicPanelUI.installUI(BasicPanelUI.java:56)
at javax.swing.JComponent.setUI(JComponent.java:664)
at javax.swing.JPanel.setUI(JPanel.java:153)
at javax.swing.JPanel.updateUI(JPanel.java:126)
at javax.swing.JPanel.<init>(JPanel.java:86)
at javax.swing.JPanel.<init>(JPanel.java:109)
at javax.swing.JPanel.<init>(JPanel.java:117)
at lukemoll.MyClass.<init>(MyClass.java:15)
このエラーは、jsvc
とjava
コマンドの両方で再現できます。
システムプロパティ 'System.setProperty( "java.awt.headless"、 "true");の設定は役に立ちますか? – Robin
@Robin私は自分のコードのどこかに追加したと思ったが、私はそれを試みるだろう(私は5分、SFTPにする必要がある) –
@Robinは何もしていないようだ:/ –