问题标签 [javah]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
16981 浏览

java - 使用“javah”使用 JNI 生成头文件

我正在尝试将 JNI 用于使用 OpenCV4Android 库的 Android 应用程序。我可以在不使用 opencv 库的情况下生成头文件,但是每当类导入任何内容时都会出错。我认为它需要链接到图书馆,但我不知道该怎么做?我在 Windows 8.1 64 位机器上使用 cygwin。

原始输出:

在以下建议之后:Android,使用 javah 生成 jni 头文件,显示找不到 org.opencv.core.Mat 的错误,我得到以下输出:

我试过了:

  • 在 icam 之后删除 '/'
  • 在“icam/”之后添加 nativeRDE
  • 在“icam/”之后添加 nativeRDE.class

谢谢你的帮助。

0 投票
1 回答
2933 浏览

android - Android NDK:JavaH 找不到位图的签名

我的 Android 类中有一个本机方法:

当我尝试使用来自 Externla 配置工具的 Eclipse Javah 工具创建头文件时,我收到一条消息:

错误:无法确定位图的签名

如果我删除本机方法声明,则不会发生这种情况。如何调试此问题以确保 javah 可以找到位图的签名?

0 投票
1 回答
1159 浏览

java - Javah 和 Eclipse 缺少类文件 (android.support.v4.app.FragmentActivity)

我想使用 javah 生成标头,但是当我这样做时出现错误:

我用这个参数创建了新的外部工具:

  • 位置: D:\Android\jdk1.7.0_51\bin\javah.exe

  • 工作目录: D:\Android\workspace\MyApp\bin\

  • 参数: -d D:\Android\workspace\MyApp\jni -classpath D:\Android\workspace\MyApp\bin\classes;D:\Android\workspace\appcompat_v7\libs\android-support-v7-appcompat.jar com .example.myapp.MainActivity

我使用最新版本的 Android SDK 和 NDK 作为最新版本的 Java。有什么建议么?

0 投票
2 回答
2122 浏览

java - 使用javah生成头文件

我正在尝试使用 eclipse 从 java 文件生成本机使用的头文件(c/c++)。当我在这个位置时,我只能从命令行访问 javah:

但我不能像这样引用我的java类:

因为该类位于此文件夹之外:

我想把这个文件放到一个 jni 文件夹中:

我怎样才能从命令行做到这一点?一个好的toturial也会很棒

0 投票
0 回答
268 浏览

java - Javah -stubs 不生成 c 存根

系统:我使用的是 Windows 8.1,Eclipse Juno Service Release 2。

好的,对于初学者,我尝试使用 Eclipse 编译我的项目,并且可以。我的课程叫做CConnecter,代码是:

我尝试使用命令行命令"cd C:\Users\Chris\workspace\Black Light\bin"。(我的项目名称是Black Light。)然后我运行了"javah CConnecter"。这样就成功生成了c头文件(CConnecter.h)。当我运行"javah -stubs CConnecter"时,什么也没有发生。

我需要一些帮助来找出问题所在。

控制台输出:http: //i.stack.imgur.com/5wOcA.png

我还尝试使用来自其他来源的测试和执行代码,例如SunJavaWorld的教程,但它们也不起作用。

更多信息:当我键入"javah --help""javah -h""javah -?" 要访问帮助,“-stubs”不会出现。我不知道这是为什么。我也尝试过使用Java 7Java 8最新版本执行此过程,但均未成功。

0 投票
0 回答
479 浏览

java - 尝试使用 javah 生成 C 头文件

大约一年前,我开始研究一个需要本地 C 库的 Java 项目。我使用javah生成头文件,然后编写库。这一切都是在 Windows 7 中完成的。

现在我正在尝试重新访问该项目并添加到本机库,我已经修改了 java,保存了项目并导出创建一个新的 jar 文件。

我编写了一个批处理文件来生成 C 头文件,但这就是问题所在,它不再起作用,我不确定为什么或如何解决该错误。我的批处理文件“mkhdr.bat”包含:

javah 的路径是正确的,批处理文件是从位于 eclipse 工作区中的项目的根目录运行的。

但是当我尝试运行它时,我得到:

错误:找不到“cantley.co.uk.clsMain”的类文件。

我已经尝试调整包括 -classpath 在内的 javah 调用,但没有任何效果。项目文件夹包含以下内容:

谢谢,

0 投票
1 回答
271 浏览

java - Javah 工作一些类,但不工作一些类

有很多关于 javah 的问题,但我 3 天都找不到任何解决方案。

我的java文件正常工作,没有错误。我将我的 java 文件“I2CInterface.java”复制到“jdk/bin”目录。然后“javac I2CInterface.java” I2CInterface.class 创建成功。但是“javah -jni I2CInterface”无法创建头文件。错误是“找不到类”我尝试使用类路径但不起作用。我设置了我的环境并添加了路径 C:\Program Files\Java\jdk1.8.0\bin。没有工作。这是对某些类的有趣 javah 工作,它可以创建 header。但是在这个类和一些类上不起作用。

问题是关于java文件?我的java文件如下。

0 投票
1 回答
3060 浏览

java - Javah 仍然无法在 OSX / Android Studio 中找到类文件

在 JNI 中使用它时提到了 --> Javah 错误

...而且 --> android - javah 找不到我的班级

...我仍然无法javah上班。具体来说...

我的 java 类位于此处:

从这个文件夹...

...我试过跑步...

...我也在包含.java文件的实际文件夹中尝试过这个...

都给平时...

有任何想法吗?

附带的详细日志在搜索路径中显示一些奇怪的东西......

请注意,使用 . 添加的那些似乎没有分隔符-classpath。我试过在前面加上“:”,这没什么区别。我假设这是详细输出而不是核心功能中的错误。

0 投票
1 回答
1479 浏览

android - Java Eclipse 错误:无法访问 android.support.v7.app.ActionBarActivity 的 android.support.v7.app.ActionBarActivity 类文件未找到

我需要Jni使用 Eclipse IDE 中的外部工具在我的项目的子文件夹中使用 java 生成头文件。当我在项目中选择我的班级时,我收到此错误:

找不到 android.support.v7.app.ActionBarActivity 无法访问 android.support.v7.app.ActionBarActivity 类文件

外部工具具有以下参数:

我想我需要添加 android.support.v7 但不知道如何。
我尝试添加${workspace_loc}\appcompat_v7\libs\android-support-v4.jar;到参数:

但它产生了这个错误:

不是一个有效的类名:....\appcompat_v7\libs\android-support-v4.jar;

有什么建议么?

0 投票
1 回答
171 浏览

hadoop - hadoop-2.2.0 在 Mac OS X 64 位上的编译失败

[错误]无法在项目hadoop-common上执行目标org.codehaus.mojo:native-maven-plugin:1.0-alpha-7:javah(默认):运行javah命令时出错:执行命令行时出错:设置环境变量时出错:无法运行程序“env”:错误=20,不是目录-> [帮助 1]