- 1、本文档共3页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Code::Blocks生成jni用的dll库文件
下面以Hello World 为例来说明
(1)java源程序,有一个native方法,输出hello world
?
Java代码
import?java.io.IOException; ??
??
public?class?helloworld?{ ??
????static{ ??
????????System.loadLibrary(helloworld); ??
????} ??
??
????public?static?native?void?printit(); ??
??
?????????????public?static?void?main(String[]?args)?{????????????????????helloworld?h?=?new?helloworld(); ??
????????h.printit(); ??
???????? ??
????} ??
}??
import java.io.IOException;
public class helloworld {
static{
System.loadLibrary(helloworld);
}
public static native void printit();
public static void main(String[] args) { helloworld h = new helloworld();
h.printit();
}
}
?(2)生成dll
?
javac helloworld.java
javah -jni helloworld
?
至此生成 helloworld.h
?
Cpp代码
/*?DO?NOT?EDIT?THIS?FILE?-?it?is?machine?generated?*/??
#include?jni.h ??
/*?Header?for?class?helloworld?*/??
??
#ifndef?_Included_helloworld ??
#define?_Included_helloworld ??
#ifdef?__cplusplus ??
extern?C?{ ??
#endif ??
/* ?
?*?Class:?????helloworld ?
?*?Method:????printit ?
?*?Signature:?()V ?
?*/??
JNIEXPORT?void?JNICALL?Java_helloworld_printit ??
??(JNIEnv?*,?jclass); ??
??
#ifdef?__cplusplus ??
} ??
#endif ??
#endif??
/* DO NOT EDIT THIS FILE - it is machine generated */
#include jni.h
/* Header for class helloworld */
#ifndef _Included_helloworld
#define _Included_helloworld
#ifdef __cplusplus
extern C {
#endif
/*
* Class: helloworld
* Method: printit
* Signature: ()V
*/
JNIEXPORT void JNICALL Java_helloworld_printit
(JNIEnv *, jclass);
#ifdef __cplusplus
}
#endif
#endif
?
手工建立main.cpp
?
Cpp代码
#include?jni.h ??
#include?helloworld.h ??
#include?windows.h ??
#include?stdio.h ??
??
JNIEXPORT?void?JNICALL?Java_helloworld_printit ??
??(JNIEnv?*env,?jclass?obj) ??
??{ ??
????????MessageBox(NULL,HelloWorld,ok,MB_OK); ??
??}??
#include jni.h
#include helloworld.h
#include windows.h
#include stdio.h
JNIEXPORT void JNICALL Java_helloworld_printit
(JNIEnv *env, jclass obj)
{
Mes
您可能关注的文档
最近下载
- 北师大版小学数学六年级上册(第十一册)表格式全册教案.pdf VIP
- 必威体育精装版国家开放大学电大《24210学前儿童科学教育活动指导》期末终考题库及标准参考答案 .pdf VIP
- 2025年辅警招聘考试真题附答案详解(满分必刷).docx VIP
- “党员身边无违章”活动方案.doc VIP
- 17J008 挡土墙(重力式、衡重式、悬臂式)(必威体育精装版).pdf VIP
- 《记承天寺夜游》语文教学PPT课件(3篇).pptx VIP
- 北师大版小学数学六年级上册(第十一册)表格式全册教案(最全).doc VIP
- 2025年辅警招聘考试题库【必刷】.docx VIP
- 《大学生安全教育》教案 专题四 反诈骗.docx VIP
- 穿越机的基础知识.pptx VIP
文档评论(0)