问题标签 [unsatisfiedlinkerror]
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.
android - 包括库在 Android 项目中使用的共享对象
我的 Android 项目正在使用具有本机代码的 Android 库项目,并且我正在UnsatisifiedLinkError
从库使用的本机函数中获取一个。
我已经在我的项目的 Android.mk 文件中包含了库使用的这些共享对象,它们在我构建时被正确复制到 Eclipse 项目的目录中,并且在我运行时/libs
出现在 apks目录中。/lib
找不到的方法应该在 libVuforiaTracking.so 中。
这是我的 Android.mk 文件:
这是日志消息:
这是包含库依赖项的共享对象的正确方法吗?
编辑:
我注意到包名说com.qualcomm.QCARSamples.ImageTargets.VuforiaTrackingActivity
,我可能应该注意到我在我的项目中将库的这个活动子类化,所以实际活动的包名会有所不同。当 JNI 去寻找一个名为的方法com.qualcomm.QCARSamples.ImageTargets.VuforiaTrackingActivity.getOpenGlEsVersionNative()
并且我的子类被命名时,这会导致任何问题com.my.package.MyActivity
吗?
java - tcnative-1.dll 无法在 IA 32 位平台上加载 AMD 64 位 .dll
当我尝试运行 tomcat 时出现此错误:
但是,我下载了 64 位 JRE,并仔细检查了我的 java 版本:
我以前在这里看到过这个问题,但是其中一个没有解决方案,另一个是 Eclipse 问题,但是当我直接访问 tomcat 时出现此错误。
如何找出正在检测的“IA 32 位平台”,以及如何将 Tomcat 指向正确的方向?另外,这可能是我的 servlet 通过 Eclipse 得到这个 404 错误的原因吗?
类型状态报告
消息 /JSPandServlet/控制器
描述 请求的资源不可用。
日志:
java - 从 Java 1.6.31 切换到 Java 1.6.32+ 时出现 UnsatisfiedLinkError
尝试使用诸如SVNKit和Cobertura之类的工具时,我似乎遇到了一个错误
有谁知道解决方法,还是我现在必须做出选择,Java 1.6.32 以上或保持所需的功能。
android - 获取 java.lang.ExceptionInInitializerError 和 java.lang.UnsatisfiedLinkError
我有项目源代码和 apk 文件。如果我直接在模拟器上安装 APK,那么它工作正常,但是在从 eclipse 运行应用程序时,我遇到了以下错误。
PS:这个项目中使用了一些库
帮我解决这个问题。
谢谢
java - 在 Mac OS X 上使用 sqlite4java Jar 的 UnsatisfiedLinkError
我在我的 Java 应用程序中使用 sqlite4java 库,当我在 Eclipse 中运行它时它工作得很好。但是当我构建可运行的 JAR 并尝试在 Mac OS X 上运行它时,我收到以下错误:
即使我选择“将所需的库打包到生成的 JAR 中”也会发生这种情况,这应该会复制我需要的所有文件。为什么这不起作用?
java - UnsatisfiedLinkError + JNLP + Applet + DLL
我创建了一个 JNLP 来加载小程序和一些本机 DLL 文件。以下是每个组件的代码
JNLP
JAR (HLB_Mykad-0.0.1-SNAPSHOT.jar) 结构(JAR 封装在顶层)
HTML 代码
加载小程序时,我在小程序控制台中遇到以下异常:
我的小程序是签名的小程序,小程序内的所有 DLL 文件也使用相同的签名进行签名。
java - UnsatisfiedLinkError:java.library.path 中没有 j3dcore-ogl
我在 Eclipse 中有一个项目,当我单击运行时在 ide 中运行得非常好,但我需要将它导出到一个也可以正常工作的可运行 jar 文件中。但是当我尝试运行它时,它会抛出一个异常:
我已经在谷歌上搜索了 2 天,结果很多,没有任何帮助。我通过去导出它file->export->java->Runnable jar file->i bubble extract required libraries into generated jar
,选择正确的配置,将文件保存在指定的文件夹中,然后保存就好了。或者至少我是这么认为的。java.library.path
转到.so,但是当jre lib folder
我在eclipse中运行它时,它转到j3d的.so,我尝试使用更改它System.setProperty
但没有成功。我有一种感觉是问题所在,但是当我试图解决它时,什么也没发生。我正在使用最新的java3d library (1.5.2 I believe)
。
有什么建议么?
java - 从 Java 代码调用 C++ 的问题 (Android)
我正在尝试使用 ndk 从 android 代码调用本机函数,但遇到了一些问题。该应用程序将运行一小段时间,然后出现一个错误,指示“已意外停止”。Logcat 显示这是因为 UnsatisfiedLinkError: surfaceCreated。
日志猫:
这是我试图从 Java 调用函数的地方:
以下是这些函数在 C++ 中的实现:
这是我的 Android.mk:
如果有人希望我发布其他任何内容/提供更多信息,我很乐意这样做。非常感谢您能给我的任何帮助!
android - 使用 OpenCV 和 Android NDK 未找到库(但在另一个活动中找到)
我已经浏览了无数资源(包括但不限于OpenCV4Android 的 Google 小组、StackOverflow 和OpenCV 的答案页面试图解决这个问题,达到了建议变得多余的地步。这个问题可能或多或少类似于以前的(尚未解决)我的问题,但情况不同,因此可能是不同的错误来源。
我已将 Android Activity 添加到包含成功运行的应用程序的包中(OpenCV 的教程 3 示例演示了 ndk 的使用)。该活动使用 OpenCV 的 java API,但调用System.loadLibrary("nativefile");
wherenativefile
表示本地库。loadLibrary
下面提到了调用的块;它在onManagerConnected()
方法中。在这一loadLibrary
行,Logcat 发出:
这种错误确实在其他问题中多次出现;我已经尝试了我遇到的建议。但是,对这个问题有一个值得注意的观察;成功运行的应用程序(OpenCV 示例)通过System.loadLibrary("nativefile");
.
代码相当长,因此对问题没有帮助。但是,下面总结了我认为与该问题有关的关键要素,它还总结了与该问题相关的一些先前的答案。
- 调用的 .cpp 文件具有正确的方法名称,我在其中验证它是否包含包名称和类名称以及方法名称,其模式类似于:
Java_packageNameSeperatedWithUnderScores_callingClassName_methodName
. 此外;代码被包围在一个extern "C"
块中,与其他用于本地开发的 OpenCV 示例 cpp 文件一样。 - 更新 Android 清单以了解它启动了相关活动。
下面是
Android.mk
文件:LOCAL_PATH := $(call my-dir) include $(CLEAR_VARS)
include ../../sdk/native/jni/OpenCV.mk LOCAL_MODULE := nativefile
LOCAL_SRC_FILES := nativefile.cpp
LOCAL_LDLIBS += -llog -ldl
include $(BUILD_SHARED_LIBRARY)下面是
Application.mk
文件APP_STL := gnustl_static
APP_CPPFLAGS := -frtti -fexceptions
APP_ABI := all我试过用 替换
all
并APP_ABI
再次armeabi
尝试用armeabi-v7a
,但是没有不同的结果。- 正如评论中所建议的,我还验证了 apk(在提取后)在各种架构类型文件夹下的
.so
文件夹中包含所需的文件。lib
下面是
/li>BaseLoaderCallBack
实例化块,与 OpenCV 示例中的块没有太大不同,但是我不调用 OpenCV 相机,因为该应用程序对从 SD 卡读取的图像执行图像处理。然而,与 OpenCV 的示例不同,在有问题的 Activity 中,该行
loader.onManagerConnected(LoaderCallbackInterface.SUCCESS);
被添加到onCreate()
方法中,因为该方法onManagerConnected
似乎没有被调用。- 在每个 OpenCV 语句块之前,都会
if (OpenCVLoader.initDebug())
检查条件。我也尝试了推荐OpenCVLoader.initAsync(OpenCVLoader.OPENCV_VERSION_2_4_3, this, loader)
的条件检查,但仍然没有不同的结果。 - 此外,ndk-build 运行成功
.so
,为本机库构建文件nativefile
。
鉴于在同一个包中的其他活动,加载库并很好地利用它(当然在相应地修改清单文件和 cpp 方法名称之后),我认为项目属性是正确的(例如添加 OpenCV 库和必要的环境路径等)。
我多次查看了 OpenCV 示例,并遵循了相同的做法,但略有不同,如上所述。
有什么想法可能是问题的根源吗?
感谢您的时间。