1.编写java代码
class HelloWorld {
public native void displayHelloWorld();
static {
System.loadLibrary("hello");
}
public static void main(String[] args) {
new HelloWorld().displayHelloWorld();
}
}
2.编译java程序
javac HelloWorld
3.使用javah生成c语言定义文件
javah -jni HelloWorld
4.使用c语言实现定义
#include<jni.h>
#include <stdio.h>
#include "HelloWorld.h"
JNIEXPORT void JNICALL Java_HelloWorld_displayHelloWorld(JNIEnv *env,jobject obj) {
printf("Hello World!\n");
return ;
}
5.编译c语言
gcc gcc -shared -I ~/java/jdk1.6.0_12/include/ -I ~/java/jdk1.6.0_12/include/linux/ HelloWorld.c -o libhello.so
6.运行java
java -Djava.library.path=. HelloWorld
分享到:
相关推荐
springboot环境下java调用c程序生成动态链接库(.so文件),并调用(基于JNI,Ubuntu)C++是一种广泛使用的编程语言,它是由Bjarne Stroustrup于1979年在新泽西州美利山贝尔实验室开始设计开发的。C++是C语言的...
1.认识ubuntu.ogv 2.ubuntu实用技巧.ogv 3.IMX6q_android4.4.2源码编译.ogv 4.用git克隆github仓库到本地.ogv 5.NDK编译c生成.so文件.ogv 6.IMX6q开发板Android镜像烧录.ogv 7.控制台安装app.ogv 8.在控制台控制led...
1:cmake 跨平台sdk 开发快速入门,写一个CMakeLists.txt 可以生成windows 和 ubuntu16.04 和 安卓三个平台的sdk(动态库) 2:java的jni 技术,java 和c/c++ 的数据交互(包括基本类型和数组类型和类的相互传递)和...
1.认识ubuntu.ogv 2.ubuntu实用技巧.ogv 3.IMX6q_android4.4.2源码编译.ogv 4.用git克隆github仓库到本地.ogv 5.NDK编译c生成.so文件.ogv 6.IMX6q开发板Android镜像烧录.ogv 7.控制台安装app.ogv 8.在控制台控制led...
1.认识ubuntu.ogv 2.ubuntu实用技巧.ogv 3.IMX6q_android4.4.2源码编译.ogv 4.用git克隆github仓库到本地.ogv 5.NDK编译c生成.so文件.ogv 6.IMX6q开发板Android镜像烧录.ogv 7.控制台安装app.ogv 8.在控制台控制led...
1.认识ubuntu.ogv 2.ubuntu实用技巧.ogv 3.IMX6q_android4.4.2源码编译.ogv 4.用git克隆github仓库到本地.ogv 5.NDK编译c生成.so文件.ogv 6.IMX6q开发板Android镜像烧录.ogv 7.控制台安装app.ogv 8.在控制台控制led...
1.认识ubuntu.ogv 2.ubuntu实用技巧.ogv 3.IMX6q_android4.4.2源码编译.ogv 4.用git克隆github仓库到本地.ogv 5.NDK编译c生成.so文件.ogv 6.IMX6q开发板Android镜像烧录.ogv 7.控制台安装app.ogv 8.在控制台控制led...
1.认识ubuntu.ogv 2.ubuntu实用技巧.ogv 3.IMX6q_android4.4.2源码编译.ogv 4.用git克隆github仓库到本地.ogv 5.NDK编译c生成.so文件.ogv 6.IMX6q开发板Android镜像烧录.ogv 7.控制台安装app.ogv 8.在控制台控制led...
4.2.3 在UbuntuLinux下安装 4.3 通过示例程序试用SWIG 4.3.1 接口文件 4.3.2 在命令行方式下调用SWIG 4.3.3 将SWIG集成到Android构建过程中 4.3.4 更新Activity. 4.3.5 执行应用程序 4.3.6 剖析生成的代码 4.4 封装...
4.2.3 在Ubuntu Linux下安装 85 4.3 通过示例程序试用SWIG 86 4.3.1 接口文件 86 4.3.2 在命令行方式下调用SWIG 89 4.3.3 将SWIG集成到Android构建过程中 90 4.3.4 更新Activity 92 4.3.5 执行应用程序 93 ...
Gradle升级默认情况下,Ubuntu附带的Gradle很旧,并且无法解决依赖关系,因此请对其进行升级。 $ sudo add-apt-repository ppa:cwchien/gradle$ sudo apt-get update$ sudo apt upgrade gradle安装Oracle Java 1.8 ...
作为入门级选手,2D游戏显然更适合上手一些,另外适合果果这个年龄段的幼教类的游戏也多以2D游戏居多。3D游戏本身也太难了,不仅要 Programming能力,还要3D建模能力,这些学习起来周期就太长了;一直是Ubuntu Fans...
• Linux (tested on Linux Ubuntu Dapper Drake) Supported Supported Supported Supported Development Development Development Development Environments Environments Environments Environments Eclipse IDE o...