Javah Error: Could not find class file for package.name
Javah Error: Could not find class file for package.name
我正在尝试为 JNI (Linux) 生成 C header 文件。我阅读了关于 javah
的文档和问题,但我仍然遇到相同的错误
Error: Could not find class file for 'org.sqlite.core.NativeDB'
我想我有一个非常明显的错误,但我真的没有看到任何...所以,我需要 从 生成 header 文件=]NativeDB.class 路径为:
/u/users/maas/user123/sqlite/sqlite-jdbc-3.21.0/target/common-lib/org/sqlite/core/NativeDB.class
我转到 common-lib 文件夹并从以下路径调用 javah
:
/u/users/maas/user123/sqlite/sqlite-jdbc-3.21.0/target/common-lib/
我试过的命令:
javah -classpath "/u/users/maas/user123/sqlite/sqlite-jdbc-3.21.0/target/common-lib/org/sqlite/core" org.sqlite.core.NativeDB
javah org.sqlite.core.NativeDB
我得到的错误:
Error: Could not find class file for 'org.sqlite.core.NativeDB'
我在我提到的正确目录中看到 NativeDB.class
文件。在 NativeDB.java
中(与 NativeDB.class 不在同一个文件夹中,如果它很重要)有一个包路径:
package org.sqlite.core;
我发现了这个问题(非常明显和愚蠢)。
我在问题中写的命令是正确的。我正在使用 USS(UNIX 系统服务)进行 Z/OS 和 ftp 传输文件。我没有检查我是否通过 ftp 不是二进制格式发送了 .class 文件。由于这个原因,Java 由于编码错误而无法找到 classes。
您只需要在 ftp 中打开二进制模式,如下所示:
ftp server.name.com
..login...
bi
mput *class
bi
命令启用二进制模式。 .class 文件预期采用这种格式。
我正在尝试为 JNI (Linux) 生成 C header 文件。我阅读了关于 javah
的文档和问题,但我仍然遇到相同的错误
Error: Could not find class file for 'org.sqlite.core.NativeDB'
我想我有一个非常明显的错误,但我真的没有看到任何...所以,我需要 从 生成 header 文件=]NativeDB.class 路径为:
/u/users/maas/user123/sqlite/sqlite-jdbc-3.21.0/target/common-lib/org/sqlite/core/NativeDB.class
我转到 common-lib 文件夹并从以下路径调用 javah
:
/u/users/maas/user123/sqlite/sqlite-jdbc-3.21.0/target/common-lib/
我试过的命令:
javah -classpath "/u/users/maas/user123/sqlite/sqlite-jdbc-3.21.0/target/common-lib/org/sqlite/core" org.sqlite.core.NativeDB
javah org.sqlite.core.NativeDB
我得到的错误:
Error: Could not find class file for 'org.sqlite.core.NativeDB'
我在我提到的正确目录中看到 NativeDB.class
文件。在 NativeDB.java
中(与 NativeDB.class 不在同一个文件夹中,如果它很重要)有一个包路径:
package org.sqlite.core;
我发现了这个问题(非常明显和愚蠢)。
我在问题中写的命令是正确的。我正在使用 USS(UNIX 系统服务)进行 Z/OS 和 ftp 传输文件。我没有检查我是否通过 ftp 不是二进制格式发送了 .class 文件。由于这个原因,Java 由于编码错误而无法找到 classes。
您只需要在 ftp 中打开二进制模式,如下所示:
ftp server.name.com
..login...
bi
mput *class
bi
命令启用二进制模式。 .class 文件预期采用这种格式。