标签: java-native-interface

无法加载JNI共享库(JDK)

当我尝试打开Eclipse时,弹出对话框指出:

无法加载JNI共享库"C:/JDK/bin/client/jvm.dll"`.

在此之后,Eclipse强制关闭.

以下是我想提出的几点:

  • 我检查了那条路上是否有任何东西.它确实存在.
  • 我的Eclipse和Java SE开发工具包都是64位的.我检查了我的系统,它可以处理64位.
  • 我在Google和Stack Overflow上搜索过这个问题,我找到的唯一答案是下载32位版本的JDK和Eclipse.

下载32位版本是我唯一想做的事情.
会有什么建议来解决这个问题?

java eclipse windows java-native-interface

915
推荐指数
15
解决办法
143万
查看次数

如何判断我是在64位JVM还是32位JVM(从程序中运行)?

如何判断我的应用程序运行的JVM是32位还是64位?具体来说,我可以访问什么功能或偏好来在程序中检测到这个?

java 64-bit java-native-interface jvm 32-bit

552
推荐指数
8
解决办法
63万
查看次数

Java中的native关键字是什么?

在玩这个谜题(这是一个Java关键字琐事游戏)时,我遇到了native关键字.

Java中的native关键字用于什么?

java java-native-interface native keyword

455
推荐指数
10
解决办法
22万
查看次数

是什么让JNI呼叫变慢?

我知道在Java中进行JNI调用时"跨越边界"很慢.

不过,我想知道什么是它,使得它慢?在进行使其速度变慢的JNI调用时,底层jvm实现会做什么?

java performance java-native-interface

184
推荐指数
3
解决办法
4万
查看次数

Eclipse报告"无法加载JNI共享库"

可能重复:
无法加载JNI共享库(JDK)

我无法打开Eclipse,因为我得到一个警告说

无法加载JNI共享库C:\ Program Files(x86)\ eclipse\jre\bin\client\jvm.dll

我在YouTube上找到了一种解决方案,Eclipse无法加载JNI库修复.

他说你只需要下载一个JRE 7文件夹.然后我就不得不更换 C:\Program Files (x86)\Java\jre7\bin\server\jvm.dllC:\Program Files (x86)\eclipse\jre\bin\client\jvm.dll.

但是JRE 7的链接在哪里?

java eclipse java-native-interface

130
推荐指数
4
解决办法
62万
查看次数

如何将数组从JNI返回到Java?

我正在尝试使用android NDK.

有没有办法将int[]在JNI中创建的数组(在我的情况下是一个)返回给Java?如果是这样,请提供一个JNI函数的快速示例.

-谢谢

java arrays java-native-interface android

120
推荐指数
2
解决办法
9万
查看次数

如何为Android和iOS使用相同的C++代码?

NDK的 Android 支持C/C++代码和iOS,Objective-C++也支持,那么我如何用Android和iOS之间共享的本机C/C++代码编写应用程序?

c++ java java-native-interface cross-platform objective-c++

115
推荐指数
2
解决办法
3万
查看次数

使用JNI而不是JNA来调用本机代码?

与JNI相比,JNA似乎更容易调用本机代码.在什么情况下你会使用JNI而不是JNA?

java java-native-interface native jna

114
推荐指数
5
解决办法
5万
查看次数

JNI将jstring转换为char*

jstring通过使用JNI 将URL字符串从Java传递到C代码作为数据类型.我的库方法需要一个char *url.

我如何转换jstringchar *

PS:在C中使用jcharArray有什么好处吗?(即char []在本机方法中传递而不是字符串)

java java-native-interface

109
推荐指数
2
解决办法
11万
查看次数

对__android_log_print'的未定义引用

我的make文件有什么问题?

Android.mk

LOCAL_PATH := $(call my-dir)

include $(CLEAR_VARS)
LOCAL_MODULE    := foo
LOCAL_SRC_FILES := foo.c
LOCAL_EXPORT_LDLIBS := -llog
include $(BUILD_SHARED_LIBRARY)
Run Code Online (Sandbox Code Playgroud)

foo.c的

#include <string.h>
#include <jni.h>
#include <android/log.h>

#define  LOG_TAG    "foo"
#define  LOGI(...)  __android_log_print(ANDROID_LOG_INFO, LOG_TAG, __VA_ARGS__)

void test() {
    LOGI("test");
}
Run Code Online (Sandbox Code Playgroud)

NDK建造

foo.c:9: undefined reference to `__android_log_print'
Run Code Online (Sandbox Code Playgroud)

java-native-interface logging android android-ndk

96
推荐指数
7
解决办法
8万
查看次数