我正在通过NetBeans8.0使用Oracle JDK 1.8.0_05在Ubuntu 12.04 LTS 64位(使用Gnome Shell)上使用Java运行一些代码。
在Main或在其他情况下为空的Java项目中调用以下函数时,它们可以完美运行,但是,从任何JavaFX应用程序中调用时,它将导致窗口冻结并停止响应(尽管该项目符合要求),要求将其强制关闭。
谁能提出我所写内容的任何问题,可能引起问题或循环?
las,由于失败的模式,没有错误消息可供我提供或分析。
感谢您收到任何建议,在此先感谢。
public static void desktopTest(){ Desktop de = Desktop.getDesktop(); try { de.browse(new URI("http://stackoverflow.com")); } catch (IOException | URISyntaxException e) { System.out.println(e); } try { de.open(new File("/home/aaa/file.ext")); } catch (IOException e){ System.out.println(e); } try { de.mail(new URI("mailto:email@example.com")); } catch (URISyntaxException | IOException e){ System.out.println(e); } }
我也有同样的问题,此解决方案对我有用:
if( Desktop.isDesktopSupported() ) { new Thread(() -> { try { Desktop.getDesktop().browse( new URI( "http://..." ) ); } catch (IOException | URISyntaxException e1) { e1.printStackTrace(); } }).start(); }