[英]How to set a JVM launch argument in Eclipse?
我正在開發一個需要 LWJGL 的項目,我正在嘗試啟動並運行該項目,但在設置 JVM Launch 參數方面遇到了障礙。
LWJGL 的文檔如下:
將 -Djava.library.path 系統屬性(作為 JVM 啟動參數)設置為包含本機文件的文件夾
我得到的錯誤是:
Exception in thread "main" java.lang.UnsatisfiedLinkError: no lwjgl in java.library.path
at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1857)
at java.lang.Runtime.loadLibrary0(Runtime.java:870)
at java.lang.System.loadLibrary(System.java:1119)
at org.lwjgl.LWJGLUtil.loadLibrarySystem(LWJGLUtil.java:337)
at org.lwjgl.Sys$1.run(Sys.java:36)
at java.security.AccessController.doPrivileged(Native Method)
at org.lwjgl.Sys.<clinit>(Sys.java:33)
at HelloWorld.run(HelloWorld.java:24)
at HelloWorld.main(HelloWorld.java:114)
我已經將 LWJGL jar 添加到 Properties -> Java Build Path -> Libraries 中。
我已經做了一些查詢來弄清楚如何設置 JVM Launch 參數,但我遺漏了一些明顯的東西。 我是使用 Java 項目構建配置的新手。 有任何想法嗎? 謝謝。
更新
在得到一些有用的答案之后,我在運行配置中添加了一個系統變量,但仍然出現相同的錯誤。 這是我的運行配置的屏幕截圖。
此外,我的 lwjgl jar 位於我的項目文件夾中可能是重要的信息。
您可以直接在代碼中設置系統屬性,以便它們在 eclipse 之外工作。
public class Main {
static {
final String PATH_TO_NATIVES = /*...*/;
System.setProperty("java.library.path", PATH_TO_NATIVES);
}
}
您應該在任何其他操作之前執行此操作,因此將其放在主類中的靜態塊中(如上面的代碼中)或主方法的開頭。
順便說一句:你也可以設置org.lwjgl.librarypath
,它更具體(盡管這兩個屬性都可以工作)。
編輯:從 3.0.0b build 37 開始,可以在運行時使用新的Configuration
類設置這些屬性。
public class Main {
final String PATH_TO_NATIVES = /*...*/;
Configuration.LIBRARY_PATH.set(PATH_TO_NATIVES);
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.