关于java jni编译javac javah的问题

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


如果此命令还报找不到类文件,可以尝试  javah -classpath . -jni com.jl.test3.B   便可生成.h 文件



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




  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

云台095

省钱后记得打赏哦

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值