WindowsプラットフォームでのJavaコードを起動すると、最近問題が発生しました。私は成功のために助けを求めた。Eclipseでの問題:DefaultScreenDeviceを取得できません - > GUIを起動できません
は、今のところ、私は、SwingやAWTに依存しているであろう任意のJavaアプリケーションを起動することはできません。たとえば、main
メソッドからそのようなアプリケーションを起動すると、エラーメッセージなしで存在します。
私は問題に少しデバッグおよびIはGraphicsEnvironment
(JSK 1.8.121でライン471から482)を初期化するときに不良行は、AWTのWindow.class
であることがわかった:
private GraphicsConfiguration initGC(GraphicsConfiguration gc) {
GraphicsEnvironment.checkHeadless();
if (gc == null) {
gc = GraphicsEnvironment.getLocalGraphicsEnvironment().
getDefaultScreenDevice().getDefaultConfiguration();
}
setGraphicsConfiguration(gc);
return gc;
}
Aこのような問題をデバッグするために使用main
方法:
public static void main(final String[] args)
{
System.out.println("Launching stuff");
final GraphicsEnvironment localGraphicsEnvironment = GraphicsEnvironment.getLocalGraphicsEnvironment();
System.out.println(localGraphicsEnvironment); // DEBUG
final GraphicsDevice defaultScreenDevice = localGraphicsEnvironment.getDefaultScreenDevice();
System.out.println(defaultScreenDevice); // DEBUG
final GraphicsConfiguration defaultConfiguration = defaultScreenDevice.getDefaultConfiguration();
System.out.println(defaultConfiguration); // DEBUG
System.out.println("Launched");
}
プリント: Launching ImageJ s[email protected]
と、それはそれです。
jdkを最新のもの(win-x64プラットフォーム)に更新しようとしましたが、成功しませんでした。 Eclipseを最新のものにアップデートすることもできません(私はMars 2とNeonを試しました)。 (デフォルトのスクリーンサービスを手に入れることができないため)グラフィックドライバに問題があると思われますが、NVIdia Geforce Experienceアップデータの最新版です。デバイスマネージャは問題を報告しません。問題は最近のことである
、それは6日前に最大登場しました。現時点では、Vulkanなどのグラフィックドライバのアップデートがあります。 私はもうこのシステムでは開発できないという意味で迷っています。
誰もが、私はこの問題に対処するために従うことができるつながりますか?
これも私の問題でした。 NVidia GTX580にJava 1.8.0_91〜1.8.0_212をインストールしました。 JFrameが作成されたAWTコードと同じ行に問題をデバッグしました。内部的に値-107374079のシステムが存在しました。 NVidia 3D Visionをアンインストールすると、この問題は魔法のように解決されました。どうもありがとう! – pjklauser