首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >捕捉UnsatisfiedLinkError

捕捉UnsatisfiedLinkError
EN

Stack Overflow用户
提问于 2013-07-01 07:46:11
回答 1查看 890关注 0票数 0

我知道捕获错误不是一种好的做法,但在这种情况下,这样做很重要。我试图运行一个jar,其中包含游戏的一部分,但它给了我一个不满意的链接错误,但有趣的是:我使用了以下代码:

代码语言:javascript
复制
System.setProperty("org.lwjgl.librarypath", new File("lib/natives").getAbsolutePath());

但是在netbeans中,它给了我这个错误,但是,jar运行。现在,如果我更改为代码,如下所示:

代码语言:javascript
复制
System.setProperty("org.lwjgl.librarypath", new File("Dist/lib/natives").getAbsolutePath());

现在,它可以在netbeans中运行,但是它不能运行的jar ...我不明白!所以,我尝试使用try/catch来同时使用这两种方法中的任何一种,下面是完整的代码:

代码语言:javascript
复制
try{
    System.setProperty("org.lwjgl.librarypath", new File("lib/natives").getAbsolutePath());
}
catch (UnsatisfiedLinkError e){
    System.setProperty("org.lwjgl.librarypath", new File("dist/lib/natives").getAbsolutePath());
}

当我在netbeans中运行它时,它给出的是第一行的错误,而不是catch部分的错误。到底怎么回事?提前感谢朋友们!

EN

回答 1

Stack Overflow用户

发布于 2013-07-01 08:43:17

在类似这样的代码中:

代码语言:javascript
复制
 new File("Dist/lib/natives").getAbsolutePath()

您提供了一个相对于JRE“用户”(或工作)目录的路径“Dist/lib/native”。相对于系统属性"user.dir“的值。此属性的值是在JVM启动时设置的,并且可以根据JVM的启动方式而变化。您应该打印或记录'user.dir‘的值,并观察问题中提到的每个启动案例的差异,以了解发生了什么。

代码语言:javascript
复制
System.ou.println(System.getProperty("user.dir"));
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17395883

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档