gpt4 book ai didi

java - 捕获 UnsatisfiedLinkError

转载 作者:行者123 更新时间:2023-12-01 14:22:52 32 4
gpt4 key购买 nike

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

System.setProperty("org.lwjgl.librarypath", new File("lib/natives").getAbsolutePath());

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

System.setProperty("org.lwjgl.librarypath", new File("Dist/lib/natives").getAbsolutePath());

现在,它在 netbeans 中运行,但 jar 不起作用...我不明白!,所以,我尝试使用 try/catch 来使用两者中的任何一个,这是完整代码:

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 部分的错误。这是怎么回事?先谢谢 friend 们了!

最佳答案

在这样的代码中:

 new File("Dist/lib/natives").getAbsolutePath()

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

System.ou.println(System.getProperty("user.dir"));

关于java - 捕获 UnsatisfiedLinkError,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17395883/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com