1。建立一个java类,比如HelloWorld.java
代码如下:
2。编译上面的HelloWorld.java,命令为javac HelloWorld,生成.class文件
3。用javah HelloWorld命令把.class文件生成出.h文件。
.h文件的内容大致如下:
4。写一个HelloWorld.c文件,文件名和内容如下。
5。现在已经差不多拉,开始把文件生成为.so库文件。
命令:gcc -I /usr/lib/jvm/java-6-openjdk/include -I
/usr/lib/jvm/java-6-openjdk/include/linux -fPIC -shared -o libhello.so
HelloWorld.c
解释一下:这个java-6-openjdk也可以是java-6-sun,看你装什么版本了。
并且一定要注意.so的库名为libhello.so,不是hello.so。
(可能编译的时候出错误说:找不到stdio.h文件,那说明你没有装好软件包,用下面的命令
sudo apt-get install build-essential)
6。下面我是这样做的,把hello.so扔进 usr/lib库文件目录下。
因为如果程序要调用库,它会自动搜索这个目录。
命令:sudo mv libhello.so /usr/lib
7。编译运行, 命令java HelloWorld
“Hello World”
成功!
1万+

被折叠的 条评论
为什么被折叠?



