我有一个简单的问题,但我找不到答案; / 如何在java项目中创建和调用汇编程序库? 我找到了这样的东西来调用创建的库:
public class Hello {
public static void main(String[] args) {
System.out.println("start");
System.loadLibrary("native");
(new Hello()).nativeCode();
System.out.println("stop");
}
public native void nativeCode();
}
但创建库的解决方案基于linux,所以我无法弄清楚如何在win 7 64位上执行此操作。 你有什么想法?感谢您的建议。
答案 0 :(得分:2)
使用JNI完成从Java调用本机代码。您需要编写一个包含使用native
关键字声明的方法的Java类,并且在您的本机库中,您需要包含一个相应的函数,该函数具有适当的名称和参数供JVM调用
由于JVM调用的本机函数接受其类型在C头jni.h
中定义的参数,并且您通过调用在相同头中声明的C函数与JVM交互,您可能会发现它最简单编写自己的一些C(或C ++)代码,充当JVM和汇编代码之间的中介。
如何实际构建本机库的细节是特定于平台的,但不是特定于Java的;在Windows上,Java System.loadLibrary()
只加载普通的DLL文件。您的编译器/汇编程序文档应提供有关如何构建它的信息。