我试图通过使用来自“ net.java.games.input”的第三方库来监听Java中的键盘事件。当我在Eclipse中运行代码时,它可以正常工作。但是,当我构建项目并运行.jar时,却没有。我猜的原因是,该库需要一些.dll文件来侦听我的键盘,但它们无法在.jar中工作。
这是我的代码示例;
ControllerEnvironment ce = ControllerEnvironment.getDefaultEnvironment();
Controller[] ca = ce.getControllers();
那么,我应该怎么做才能在.jar中完成这项工作?
谢谢。
答案 0 :(得分:0)
您可以使用System.loadLibrary()
来让JVM加载您的dll或使用System.load()
来从特定路径加载文件:
static {
System.load("PATH/TO/file.dll");
}
答案 1 :(得分:0)
所以您的问题与此相关
JInput "no jinput-dx8 in java.library.path" Error
您应该将java.library.path属性设置为指向目录 包含JInput的本机dll。您可以通过添加 -Djava.library.path = x(其中x是您的路径)到命令行或Eclipse中“运行配置”对话框的“ VM自变量”字段。
回答了2010年1月12日19:48
axtavt 198k31421427
您也可以在主要开始时这样做
System.setProperty(“ java.library.path”,System.getProperty(“ java.library.path”)+“; thePathOfYourDll”);