1 Star 0 Fork 1

戒酒的李白/java-features

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README

java开发一个native方法

https://blog.csdn.net/haidian_fengyu/article/details/109160195

Centos下JNI实现详细步骤

https://www.jianshu.com/p/5fe42439cfa6

【详解】JNI(Java Native Interface)(一)

https://my.oschina.net/u/4385353/blog/3278243

windows的一些以及java maven使用jna库

https://blog.csdn.net/weixin_38238552/article/details/103286882

centos下查看Java安装路径

https://blog.csdn.net/weixin_40789566/article/details/80036130

gcc: error trying to exec 'cc1plus': execvp: 没有那个文件或目录

https://blog.csdn.net/junweicn/article/details/80942928

######### CentOS环境,自己操作

  1. centos安装gcc
  2. centos安装jdk,查看java安装目录有两种方式,第一种就是echo $JAVA_HOME,第二种就是根据上面的网址
  3. 新建JNITest.java
public class JNITest {
    // 定义一个native方法
	public native void testN();
	static {
         System.load("/root/javaText/libFirstJNI.so");
	}
	public static void main(String[] args){
         new JNITest().testN();
	}
}
  1. javac JNITest.java得到JNITest.class
  2. 把上一步得到的class编译成c的头文件:javah -jni JNITest
  3. 编写JNITest.cpp文件,实现native方法

#include "JNITest.h"

JNIEXPORT void JNICALL Java_JNITest_testN(JNIEnv *, jobject) { printf("hello native method!!"); }

  1. 编译生二进制文件,得到JNITest.o gcc -I/usr/lib/jvm/java-1.8..._64/include/linux -I/usr/lib/jvm/java-1.8...._64/include -fPIC -c JNITest.cpp

  2. gcc -shared得到libFirstJNI.so文件 gcc -shared JNITest.o -o libFirstJNI.so

  3. 最后再运行上面的class文件即可 java JNITest

马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/zhangbaocheng/java-features.git
git@gitee.com:zhangbaocheng/java-features.git
zhangbaocheng
java-features
java-features
develop

搜索帮助