关于java jni编译javac javah的问题

晨曦之光 发布于 2012/03/05 15:34
阅读 676
收藏 0

javac  编译class文件命令,需要注意的是当类B中import类A时,在编译B时要包含A的路径,如

project  src  com.jl.test  A.java 

                     com.jl.test2 B.java

B中importA,在编译B时应该  : javac  -cp ~/project/src  B.java       (-cp :classpath简称,要保证~/project/src  下能找到如B中描述的 import com.jl.test.A;)(~/project/src 为相对路径,在linux下是相对路径,windows下可写绝对路径,如D:/project/src)


javah  将class文件编译成.h文件,保证文件中包含native方法,主要完成调编译成的so文件。

退到src 下,或者你的包名外的目录,"com"外,执行  javah -jni com.jl.test2.B,    (不带class扩展名,自动默认找class文件)

ok

会在com路径外生成 Java_com_jl_test2_B.h


如果在编译中还报导入第三方包的文件报错可以先注释掉报错文件再编译。





原文链接:http://blog.csdn.net/jinliang_890905/article/details/7179737
加载中
返回顶部
顶部