当前位置: 技术问答>java相关
惨了,老板要我研究我不懂的东西
来源: 互联网 发布时间:2015-09-08
本文导语: 我刚学java的,编一个小类,我都编得颤颤惊惊,今天还要我今晚之内研究出用java调用dll动态连接库,我怎么知道用什么技术!!!!!!?????? 请问各位好心人、高手,谁能给点的简单例子,还有我连dll都没...
我刚学java的,编一个小类,我都编得颤颤惊惊,今天还要我今晚之内研究出用java调用dll动态连接库,我怎么知道用什么技术!!!!!!??????
请问各位好心人、高手,谁能给点的简单例子,还有我连dll都没有能不能给我提供个简单的库,帮人帮到底呀,先谢过了!
我的邮箱是j2ckc@163.net,急呀
请问各位好心人、高手,谁能给点的简单例子,还有我连dll都没有能不能给我提供个简单的库,帮人帮到底呀,先谢过了!
我的邮箱是j2ckc@163.net,急呀
|
给一个简单例子:
package mytest;
public class HelloNative
{ //要调用的本地方法声明为native
public native static void greeting();
static
{
System.loadLibrary("newPrintfDll");
}
}
主类如下:
package mytest;
import mytest.*;
public class HelloNativeTest
{
public static void main(String[] args)
{
HelloNative.greeting();
}
}
首先,你要编译有native方法的那个文件,生成class文件,然后,使用jdk自带的命令javah编译该类文件,生成.h文件,生成的.h文件的关键代码如下:
JNIEXPORT void JNICALL Java_mytest_HelloNative_greeting
(JNIEnv env*, jclass cl);//稍微改了改
用vc或者c++builder做一个dll文件,跟着winzard做,不难,将这段代码拷贝到cpp文件里(用vc做时),然后再在下面写出你要的代码如
JNIEXPORT void JNICALL Java_mytest_HelloNative_greeting
(JNIEnv env*, jclass cl)
{
printf("Hello NativeWorld!");
}
编译生成dll,放到c:winntsystem下就可以了.
注意:
在用vc编译dll时,要先找到jni.h和jni_md.h放到include里
在编译.h文件是注意包的路径问题(如果有的话),否则虽然可以找到dll,但还是会提示找不到方法的!
以上只是一点心得,希望对你有帮助,谢谢
package mytest;
public class HelloNative
{ //要调用的本地方法声明为native
public native static void greeting();
static
{
System.loadLibrary("newPrintfDll");
}
}
主类如下:
package mytest;
import mytest.*;
public class HelloNativeTest
{
public static void main(String[] args)
{
HelloNative.greeting();
}
}
首先,你要编译有native方法的那个文件,生成class文件,然后,使用jdk自带的命令javah编译该类文件,生成.h文件,生成的.h文件的关键代码如下:
JNIEXPORT void JNICALL Java_mytest_HelloNative_greeting
(JNIEnv env*, jclass cl);//稍微改了改
用vc或者c++builder做一个dll文件,跟着winzard做,不难,将这段代码拷贝到cpp文件里(用vc做时),然后再在下面写出你要的代码如
JNIEXPORT void JNICALL Java_mytest_HelloNative_greeting
(JNIEnv env*, jclass cl)
{
printf("Hello NativeWorld!");
}
编译生成dll,放到c:winntsystem下就可以了.
注意:
在用vc编译dll时,要先找到jni.h和jni_md.h放到include里
在编译.h文件是注意包的路径问题(如果有的话),否则虽然可以找到dll,但还是会提示找不到方法的!
以上只是一点心得,希望对你有帮助,谢谢
您可能感兴趣的文章:
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。