JNI简单步骤01
1、环境变量
1.1、相应的环境变量中,加入如下内容:(Windows)
(1)、ClASSPATH中输入 : ".;C:\Program Files\Java\jdk1.7.0_07\jre\lib\rt.jar;"//java的安装目录,特别要注意有点号和分号
(2)、PATH中输入 : "C:\Program Files\Java\jdk1.7.0_07\bin;"
2、生成 ?.h 文件,并将它复制到 C++的DLL项目中 :(Windows)
2.1、CMD 来到 项目的bin目录中
2.2、用javah命令生成头文件
javah后面的类文件的格式 : 是 类的全名(包名+class文件名),同时不能有.class后缀。
3、找到 jni.h 和 jni_md.h,并将它们复制到 C++的DLL项目中:
3.1、Win7 x64 (JDK是32位的 & VC++用的是VC6)
C:\Program Files (x86)\Java\jdk1.7.0_25\include\jni.h
C:\Program Files (x86)\Java\jdk1.7.0_25\include\win32\jni_md.h
3.1.1、或者 将它们的路径加入到 头文件搜索路径(include) 中
3.2、CentOS6.4 x64 (命令"uname -r",输出:"2.6.32-358.el6.x86_64")(JDK是64位的 & Qt5.3.2是64位的)
/usr/java/jdk1.7.0_79/include/jni.h
/usr/java/jdk1.7.0_79/include/linux/jni_md.h
4、ZC 疑问:
JDK的 32/64位 <--> (库文件)?.dll/?.so/?.a的 32/64位 : 是否需要精确对应好?
5、
6、
7、
8、
9、
JNI简单步骤01的更多相关文章
- android JNI 简单demo(2)它JNI demo 写
android JNI 简单demo(2)它JNI demo 写 一.搭建Cygwin 环境:http://blog.csdn.net/androidolblog/article/details/25 ...
- Windows下JNI执行步骤
问题描述: java JNI使用 问题解决: JNI编写步骤: (1)编写带有native声明的方法的java类 (2)使用javac编译所写的java类,然后使用javah生成扩展名 ...
- Android NDK环境搭建及调用JNI的简单步骤
转载请注明:http://www.cnblogs.com/tiantianbyconan/p/3396595.html Java Native Interface (JNI)标准是java平台的一部分 ...
- MySQL基本简单操作01
MySQL基本简单操作 学会了安装Docker,那么就将它利用起来.(/滑稽脸) 之前想学习Mysql(Windows下配置真麻烦),学会了Docker就方便了,直接使用Docker创建一个Mysql ...
- Java连接MySQL简单步骤及常见问题解析
这篇文章跟读者们介绍Java语言如何连接到MySQL数据库相关操作,及FAQ(Frequently Asked Questions)介绍. 选择工具和准备数据集 IDE:Eclipse 数据库:使用的 ...
- linux操作mysql数据库常用简单步骤
连接mysql数据库: 主要看mysql安装在哪一个目录下: mysql -h主机地址 -u用户名 -p用户密码 或者mysql -h ip地址 -u zaiai -p zaiai 或者/v ...
- Oracle优化的几个简单步骤
数据库优化的讨论可以说是一个永恒的主题.资深的Oracle优化人员通常会要求提出性能问题的人对数据库做一个statspack,贴出数据库配置等等.还有的人认为要抓出执行最慢的语句来进行优化.但实际情况 ...
- 成为Web开发人员的7个简单步骤
你想成为一名 Web 开发人员,但现在你面前有这样一个问题,那就是你没有在高科技行业工作的经验.你上了一些课程,也花了时间在个人编码项目上,但是你的简历上关于“经验”的部分仍然不为企业承认.过渡到一个 ...
- 10个简单步骤,完全理解SQL
此文章为转载 1. SQL 是一种声明式语言 首先要把这个概念记在脑中:“声明”. SQL 语言是为计算机声明了一个你想从原始数据中获得什么样的结果的一个范例,而不是告诉计算机如何能够得到结果.这是不 ...
随机推荐
- Thrift初试
Restful 基于 Http 进行通讯. 开放.标准.简单.兼容性升级容易: 性能略低.在 QPS 高或者对响应时间要求苛刻的服务上,可以用 RPC,RPC采用二进制传输.TCP 通讯,所以通常性能 ...
- 安装Vmware ESX Server5.5 ——hardware virtualization is not a feature of the cpu or is not enabled in the BIOS
Error信息: hardware virtualization is not a feature of the cpu or is not enabled in the BIOS 解决方案: F2进 ...
- c#读取excel到dataset
public DataSet TransExcelToDataSet(string fileName, List<string> sheetNames) { OleDbConnection ...
- 关于jQuery中nth-child和nth-of-type的详解
首先贴出来HTML的代码: <!DOCTYPE html> <html> <head> <meta charset="utf-8"> ...
- django_forms组件用ajax发送数据验证注册
forms组件 -forms是什么? 就是一个类,可以校验字段(前台传过来的字段) -怎么用: -校验字段功能: -先写一个类,继承Form from django.shortcuts import ...
- python中如何去掉unicode编码前面的u?
1.列表类型(用join方法) myUlist = [u'AB', u'AB', u'AB', u'AB'] print myUlist print ", ".join(myUli ...
- Tomcat Server
Tomcat Server的组成部分: 站在框架的顶层的是Server和ServiceServer:servletcontainer Service:Service是这样一个集合:它由一个或者多个Co ...
- Angular学习笔记—HttpClient (转载)
HttpClientModule 应用 导入新的 HTTP Module import {HttpClientModule} from '@angular/common/http'; @NgModul ...
- phpcms 列表页中,如何调用其下的所有子栏目?
{pc:content action="category" catid="$catid" num="99" order="list ...
- iOS学习之数据持久化详解
前言 持久存储是一种非易失性存储,在重启设备时也不会丢失数据.Cocoa框架提供了几种数据持久化机制: 1)属性列表: 2)对象归档: 3)iOS的嵌入式关系数据库SQLite3: 4)Core Da ...