当前位置: 首页 > 面试题库 >

无法解析类型'jint',并且JNIEnv,jclass

阴焱
2023-03-14
问题内容

尝试使用jni c代码构建一个简单的helloWorld android / java应用程序。我在Windows 7上使用Eclipse
Indigo。在非空间路径中安装了ndk r8,最终使ndk-build.cmd的c库得以正常构建。但是,javah生成的头文件具有未解决的错误,

  • 类型“ jint”无法解析
  • 类型“ JNIEnv”无法解析
  • 无法解析类型“ jclass”

昨天没有看到jni.h包含,但是今天早上重新启动后,该错误消失了。我也有一个未解决的JNIEXPORT和JNICALL错误,但是#defining他们似乎已经解决了。卡在上面的最后3个。搜索了谷歌和堆栈溢出的答案,但一旦有人找到解决方案,他们就不说那个解决方案是什么:(

我已经在项目属性中检查了Java和c / c
++透视图中的include。它似乎包括我想要的jni.h目录,我将android-14用于arm平台。目标是4.0.3 IceCream
Sanwich(令人困惑的API 15
?!)。我打算尝试使用AVD对此进行测试。我尝试关闭/重新打开该项目,从Eclipse中删除并重新导入,但是这些都没有用。

我是否缺少某些物品?我应该在哪些位置设置它们?非常感谢您的帮助。


问题答案:

最近,我遇到了同样的问题。就我而言,问题是我将Eclipse项目转换为C
++项目,但是我使用了C类型。因此,要解决这个问题,我只是删除线<nature>org.eclipse.cdt.core.ccnature</nature>.project从项目目录文件:

<natures>
 <nature>com.android.ide.eclipse.adt.AndroidNature</nature>
 <nature>org.eclipse.jdt.core.javanature</nature>
 <nature>org.eclipse.cdt.core.cnature</nature>
 <nature>org.eclipse.cdt.core.ccnature</nature>
 <nature>org.eclipse.cdt.managedbuilder.core.managedBuildNature</nature>
 <nature>org.eclipse.cdt.managedbuilder.core.ScannerConfigNature</nature>
 <nature>edu.umd.cs.findbugs.plugin.eclipse.findbugsNature</nature>
</natures>

然后重新启动Eclipse。有关更多信息,请阅读此内容。



 类似资料:
  • 问题内容: 这是我得到的错误: 这是我的代码: 另外,我在一个单独的类中声明了这一点: 是什么导致此错误,我该如何解决? 编辑:缩进,空格,命名约定和可读性问题已得到解决。 问题答案: 问题在于,这似乎是一个内部类(很难说,您的缩进是不好的),并且由于它不是静态的,因此您无法单独实例化它。 您要么需要自己创建一个类,要么使其成为一个类并将其实例化为(或者无论父类是什么,您的缩进在这里实际上都没有帮

  • 问题内容: 尝试遵循本教程:教程 尝试像这样使用 JSONParser : 但是Eclipse给了我。 该怎么办? 问题答案: JSONParser类在本教程的下方,它看起来像这样…… 我会考虑看看杰克逊图书馆通过http://jackson.codehaus.org/

  • 问题内容: 我从git下载了Android的Browser项目并将其导入到Eclipse。但是由于以下错误,我无法构建它: 无法解析类型java.lang.Enum。从所需的.class文件间接引用它 现在…这是一个开发环境,对于其他项目来说效果很好: Windows 7 Ultimate 64位。 JDK 64位(已安装jdk-6u23-windows-x64.exe。) Eclipse Cla

  • 我正在尝试将主题添加到我的项目中。它需要appcompat v7。 我按照Android开发者网站中提到的步骤添加了支持库。经过大量搜索,我知道支持库v4将与支持库v7冲突。 所以我从我的项目中删除了android库v4。因此,现在我得到了t错误()。 我必须做什么?请有人帮我解决这个问题。预先感谢

  • 在我的testrunner类中,当使用时,我收到一条错误消息,说“cucumberoptions不能解析为类型”。我使用的是最新版本的eclipse cucumber依赖项。通过安装和卸载eclipse,通过降低cucumber依赖项版本,我已经尝试了所有可能的方法。 我的跑者班是:

  • 我创建了一个RunTest类来使用Cucumber和JUnit运行测试场景。要运行之前的测试,我需要将RunWith类(@RunWith)导入到我的项目中,并将Cucumber.class作为参数传递。然后,类的RunWith参数识别更多传递给它的参数,不。eclipse将显示以下消息: 无法将此行类中的多个标记解析为类型。-Cucumber无法解析为类型。-注释@runwith必须定义属性值 我