• 生成class关于使用javah生成头文件时无法访问class文件的问题


    时间紧张,先记一笔,后续优化与完善。

        当生成java类,并且应用javac编译以后,生活JniDemo.class文件。比如此时地点的路径是XXX/src/com/example/hellojni。你的class文件就在这个hellojni文件夹里面,此时如果你直接在这个目录下应用javah命令,则会出现如下错误:    

        错误: 无法访问 com.example.hellojni.JniDemo

               找不到文件com.example.hellojni.JniDemo.class
           javadoc: 错误 - 找不到类com.example.hellojni.JniDemo

               Error: 未在命令行中指定任何类。请实验应用 -help。

        

        如图所示 : 

        生成和class

        

        解决方案 :

        此时,你可以返回到src目录,然后再执行javah com.example.hellojni.JniDemo .

        每日一道理
    生活中受伤难免,失败跌倒并不可怕,可怕的是因此而一蹶不振,失去了对人生的追求与远大的理想。没有一个人的前进道路是平平稳稳的,就算是河中穿梭航行的船只也难免颠簸,生活中所遇上的坎坷磨难不是偶尔给予的为难,而是必然所经受的磨练。

        如图 :

        生成和class

        此时的目录是src,然后执行javah , 注意要加上完全的包名。最后生成了.h文件。

        生成和class

        

        在C文件中实现该头文件中声明的方法,然后写完Android.mk文件。

        

    LOCAL_PATH := $(call my-dir)
    include $(CLEAR_VARS)
    LOCAL_MODULE    := hellojni
    LOCAL_SRC_FILES :=helloJni.c
    
    include $(BUILD_SHARED_LIBRARY)

        最后到cygwin 命令终端下,切换到项目主目录,比如我们这里是D:\JavaProFor64\HelloWorld,然后执行$ndk/ndk-build 命令即可编译。

        生成和class

        最后.so动态库文件会在D:\JavaProFor64\HelloWorld\libs\armeabi中存放。

        生成和class

        

    文章结束给大家分享下程序员的一些笑话语录: Borland说我很有前途,Sun笑了;Sun说我很有钱,IBM笑了;IBM说我很专业,Sybase笑了;Sybase说我数据库很牛,Oracle笑了;Oracle说我是开放的,Linux笑了;Linux说我要打败Unix,微软笑了;微软说我的系统很稳定,我们都笑了。

    --------------------------------- 原创文章 By
    问题和命令
    ---------------------------------

  • 相关阅读:
    Ogre参考手册(九) 5 硬件缓冲区
    Ogre参考手册(十二) 8 动画
    Ogre参考手册(三)3.1.3 纹理单元TextureUnit
    在Ogre中直接使用D3D
    Ogre参考手册(四)3.1.43.1.14 声明顶点、几何、片段程序(Ogre着色器脚本)
    制作立体图像(上):红蓝眼镜原理
    算法学习(java实现)
    JAVA 的data类型 long类型 生成星期几汇总
    Android R.java解析
    Myeclipse的使用方法查找类文件(Open Type)
  • 原文地址:https://www.cnblogs.com/xinyuyuanm/p/3106634.html
Copyright © 2020-2023  润新知