导致IllegalArgumentException的原因是:URI权限组件有未定义的主机异常?

时间:2015-11-30 17:06:14

标签: java exception javafx unc

我们有一个简单的桌面应用程序,它显示了一个关于我们应用程序路径的对话框,以及在一些罕见的客户测试我们的应用程序的情况下

try
{
  final URL jarPath = ClassLoader.getSystemClassLoader().getResource( "." );
  final Path parent = Paths.get( jarPath.toURI() ).getParent();//Here the exception occours.
}
catch( URISyntaxException ex )
{
    ...
}

导致此异常:

java.lang.IllegalArgumentException: URI authority component has undefined host
    at sun.nio.fs.WindowsUriSupport.fromUri(WindowsUriSupport.java:139)
    at sun.nio.fs.WindowsFileSystemProvider.getPath(WindowsFileSystemProvider.java:92)
    at java.nio.file.Paths.get(Paths.java:138)

不幸的是,我无法用我们当地的环境重现这个错误。我的第一个猜测是,应用程序是从一个没有本地映射的网络驱动器启动的,但是对话框甚至正确处理了UNC Pathes。

任何人都可以告诉我,这可能会因为这个例外而失败吗?或者甚至是确定当前应用程序路径的更好方法,它也适用于网络驱动器等环境?

0 个答案:

没有答案