Javah提示未找到 ..的类

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++头文件的位置和代码

转载于:https://www.cnblogs.com/nlpowen/p/3604663.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值