美文网首页
Javah提示未找到 ..的类

Javah提示未找到 ..的类

作者: 吉他小文 | 来源:发表于2016-05-02 19:53 被阅读0次

    Javah相关错误,如下图所示:

    解决办法:

    用javah生成java调用C++语言用的头文件时出错;首先简单地介绍javah命令的使用

    假设我们已经有了这个类,准备用它生成调用C语言的头文件。另外,这个Java文件是在路径“f:\workspace\HelloWorld\src”下,包“package cn.nlp.demo;”中的

    package cn.nlp.demo;
    class HelloWorld {
        
        public native void displayHelloWorld(); // 一个外部实现的方法
        static {
            System.loadLibrary("hello"); // 声明所调用的库名称hello.dll
        }
        public static void main(String[] args) {
            new HelloWorld().displayHelloWorld();
        }
        
    }
    

    1、首先我们要编译一下这个类,以便得到类对应的*.class

    在目录“f:\workspace\HelloWorld\src\cn\nlp\demo”下执行命令

    javac Helloworld.java
    

    即可生成Helloworld.class文件在当前目录下以及“f:\workspace\HelloWorld\bin\cn\nlp\demo”下。

    2、javah命令编写

    f:\workspace\HelloWorld\bin>javah -classpath . -jni cn.nlp.demo.HelloWorld
    

    javah中各个参数的意思分别为:

    如果没有配置环境变量中classpath的位置的话,或者不知道怎么配置的话,就一定要在工程的根目录下执行javah命令

    注意到我们的命令符的执行位置是源代码目录“f:\workspace\HelloWorld\bin>”
    -classpath 后面的路径是指包“cn.nlp.demo”所在的根路径(如下图所示)

    -jni 后面的路径是“包名+类名”

    3、最终生成的C++头文件的位置和代码

    相关文章

      网友评论

          本文标题:Javah提示未找到 ..的类

          本文链接:https://www.haomeiwen.com/subject/nmylrttx.html