JNR 不满意链接错误
JNR UnsatisfiedLinkError
这个问题可能与 this 和大量其他 UnsatisfiedLinkError 问题有关。
我正在尝试 运行 以下代码。
import jnr.ffi.LibraryLoader;
import jnr.ffi.types.pid_t;
/**
* Gets the process ID of the current process, and that of its parent.
*/
public class Getpid {
public interface LibC {
public @pid_t long getpid();
public @pid_t long getppid();
}
public static void main(String[] args) {
LibC libc = (LibC) LibraryLoader.create(LibC.class).load("c");
System.out.println("pid=" + libc.getpid() + " parent pid=" + libc.getppid());
}
}
代码编译正确但拒绝 运行,
(编译步骤)
javac -cp /usr/share/java/jnr-ffi.jar:. Getpid.java
(运行宁步)
java -cp /usr/share/java/jnr-ffi.jar:. Getpid
虽然 运行宁 我明白了 error。
- 您需要安装 objective-web 的 asm.jar
- 和jjfi.jar
- 将它们添加到您的类路径中,瞧!
用这个编译:
javac -cp /usr/share/java/jnr-ffi.jar:.:/usr/lib/java/jffi.jar:/usr/lib/java/jffi-native.jar:/usr/share/java/objectweb-asm/asm.jar Getpid.java
和 运行 与此:
java -cp /usr/share/java/jnr-ffi.jar:.:/usr/lib/java/jffi.jar:/usr/lib/java/jffi-native.jar:/usr/share/java/objectweb-asm/asm.jar Getpid
这个问题可能与 this 和大量其他 UnsatisfiedLinkError 问题有关。
我正在尝试 运行 以下代码。
import jnr.ffi.LibraryLoader;
import jnr.ffi.types.pid_t;
/**
* Gets the process ID of the current process, and that of its parent.
*/
public class Getpid {
public interface LibC {
public @pid_t long getpid();
public @pid_t long getppid();
}
public static void main(String[] args) {
LibC libc = (LibC) LibraryLoader.create(LibC.class).load("c");
System.out.println("pid=" + libc.getpid() + " parent pid=" + libc.getppid());
}
}
代码编译正确但拒绝 运行,
(编译步骤)
javac -cp /usr/share/java/jnr-ffi.jar:. Getpid.java
(运行宁步)
java -cp /usr/share/java/jnr-ffi.jar:. Getpid
虽然 运行宁 我明白了 error。
- 您需要安装 objective-web 的 asm.jar
- 和jjfi.jar
- 将它们添加到您的类路径中,瞧!
用这个编译:
javac -cp /usr/share/java/jnr-ffi.jar:.:/usr/lib/java/jffi.jar:/usr/lib/java/jffi-native.jar:/usr/share/java/objectweb-asm/asm.jar Getpid.java
和 运行 与此:
java -cp /usr/share/java/jnr-ffi.jar:.:/usr/lib/java/jffi.jar:/usr/lib/java/jffi-native.jar:/usr/share/java/objectweb-asm/asm.jar Getpid