Java Eclipse中的问题:无法获取DefaultScreenDevice->;无法启动任何GUI
最近在Windows10平台上从Eclipse中启动Java代码时出现了一个问题;我在谷歌上寻求帮助,但没有成功 到目前为止,我无法启动任何依赖Swing或AWT的Java应用程序。例如,如果我从Java Eclipse中的问题:无法获取DefaultScreenDevice->;无法启动任何GUI,java,eclipse,swing,awt,nvidia,Java,Eclipse,Swing,Awt,Nvidia,最近在Windows10平台上从Eclipse中启动Java代码时出现了一个问题;我在谷歌上寻求帮助,但没有成功 到目前为止,我无法启动任何依赖Swing或AWT的Java应用程序。例如,如果我从main方法启动这样一个应用程序,那么它存在时没有错误消息 我对这个问题进行了一点调试,在初始化图形环境(jsk 1.8.121中的第471-482行)时,我发现故障线路位于AWT的窗口.class: 用于调试以下问题的main方法: public static void main( final
main
方法启动这样一个应用程序,那么它存在时没有错误消息
我对这个问题进行了一点调试,在初始化图形环境
(jsk 1.8.121中的第471-482行)时,我发现故障线路位于AWT的窗口.class
:
用于调试以下问题的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" );
}
印刷品:
启动ImageJ
sun.awt。Win32GraphicsEnvironment@27bc2616
就这样
我尝试将jdk更新为最新版本(在win-x64平台上),但没有成功。将Eclipse更新到最新版本也不起作用(我尝试了Mars 2和Neon)。 我怀疑图形驱动程序有问题(因为我无法获得默认屏幕服务),但我也是最新的(NVIdia Geforce Experience updater),设备管理器报告没有问题 这个问题是最近的,它出现在6天前。在这段时间里,我有图形驱动程序更新,可能包括Vulkan。 我迷路了,因为这意味着我不能再在这个系统上开发了 有谁能作为我的线索来解决这个问题 最好的
jy我发现这可能是由于 我注意到我在那周早些时候更新了我的NVidia驱动程序(我有一个Geforce GTX970),并在这个过程中安装了他们的3D vision驱动程序
卸载后一版本修复了该问题 这也是我的问题。我有NVidia GTX580和Java 1.8.0_91到1.8.0_212。我在创建JFrame的同一行AWT代码中调试了这个问题,在内部某个地方存在一个值为-107374079的系统。卸载英伟达3D视觉奇迹般地解决了这个问题。非常感谢!
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" );
}