java - Kotlin/Native 安装报错: 'jni.h' file not found

标签 java c gradle kotlin

我已经安装了 openjdk-9-jdk 和 jre。

我在编译器参数中添加了包含 JDK C lib 文件的文件夹:

cCompiler.args "-I/usr/lib/jvm/java-9-openjdk-amd64/include"
cCompiler.args "-I/usr/lib/jvm/java-9-openjdk-amd64/include/linux"

在 gradle 文件中:

kotlin-native-master/Interop/Indexer/build.gradle
and
kotlin-native-master/Interop/Runtime/build.gradle

我得到的完整错误:

Exception in thread "main" java.lang.Error: /tmp/tmp17962303058800124468.c:2:10: fatal error: 'jni.h' file not found

为什么会显示这个错误?

谢谢!

最佳答案

所以,我解决了这个问题。这样做:

1) 打开:

/home/kshitij/kotlin-native-master/Interop/StubGenerator/src/main/kotlin/org/jetbrains/kotlin/native/interop/gen/jvm/StubGenerator.kt

2) 转到第 919 行并注释:"-I$javaHome/../include/$it"

3) 现在添加这个,就在上面注释行的下面:

"-I/usr/lib/jvm/java-9-openjdk-amd64/include/$it"
  • 请在此处添加您的 java 包含路径。不要完全按照上面的方式复制粘贴。

4) 保存文件并再次运行。它现在应该可以工作了。

关于java - Kotlin/Native 安装报错: 'jni.h' file not found,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46608148/

相关文章:

java - 使用 GridBagLayout 需要帮助

java - 使用 rome 遍历 feed 条目

java - process.waitFor() 似乎没有返回正确的值

c - 如何检查指向结构数组的指针在c中是否为空?

java - 无法使用 google-cloud-storage 客户端库运行空 AndroidStudio 0.8.14 项目

JavaFX : fx:id proofing

c - 如何用 C 编写面向对象的代码?

c - 如何在函数中操作变量?

Java: "attempting to assign weaker access privilege error"(使用 1.8 编译 JDK 1.6 源代码)

java - Gradle 未编译 lib 文件夹中的依赖项 jar