我注意到在 Debian 上寻找 jinput 库(我相信这里的“j”意味着这是一个 Java 特定的库,而不是一个简单的包装器),有两个包可能适用:
libjinput-java/stable 20100502+dfsg-7 all
Java Game Controller API
libjinput-jni/stable 20100502+dfsg-7 armhf
Java Game Controller API (jni)
Run Code Online (Sandbox Code Playgroud)
请注意,这是一个 ARM 系统。我知道其他语言有时有两种实现方式,一种需要编译的更快的实现,另一种不需要编译的“纯任何”(在本例中为 java)。后者在这里似乎不太可能,但我不确定;第一个作为适用于“所有”平台的包出现这一事实与第二个相比很有趣,后者是特定于体系结构的列表。
那么,在 Debian 命名法中,-java包和-jni包之间有什么区别?
我现在猜测这个-jni包允许这个库“反向”使用,即从 C/C++ 中使用,如果有人可以确认或否认......
libjinput-java并且libjinput-jni是从同一来源构建的。该-java包包含与体系结构无关的纯 Java JAR,该-jni包包含特定于体系结构的库,该库提供 Java 包所需的本机功能。请注意,这libjinput-java取决于libjinput-jni:它们不是 jinput 的两个不同实现,它们是 jinput 的两个部分,并且两者都是依赖 jinput 的软件工作所必需的。
包分离只是将与体系结构无关的文件与特定于体系结构的文件分开的一种情况。
(JNI 是Java Native Interface,它允许运行在 JVM 上的程序调用本地库中的代码。)
| 归档时间: |
|
| 查看次数: |
161 次 |
| 最近记录: |