【问题标题】:i am getting "java.lang.UnsatisfiedLinkError: The specified module could not be found." in APPIUM , i want to verify toast我收到“java.lang.UnsatisfiedLinkError:找不到指定的模块。”在 APPIUM 中,我想验证 toast
【发布时间】:2017-06-24 14:21:57
【问题描述】:

这是我的错误日志:

java.lang.UnsatisfiedLinkError: 找不到指定的模块。

at com.sun.jna.Native.open(Native Method)
at com.sun.jna.NativeLibrary.loadLibrary(NativeLibrary.java:288)
at com.sun.jna.NativeLibrary.getInstance(NativeLibrary.java:427)
at com.sun.jna.Library$Handler.<init>(Library.java:179)
at com.sun.jna.Native.loadLibrary(Native.java:569)
at com.sun.jna.Native.loadLibrary(Native.java:544)
at net.sourceforge.tess4j.util.LoadLibs.getTessAPIInstance(Unknown Source)
at net.sourceforge.tess4j.TessAPI.<clinit>(Unknown Source)
at net.sourceforge.tess4j.Tesseract.init(Unknown Source)
at net.sourceforge.tess4j.Tesseract.doOCR(Unknown Source)
at net.sourceforge.tess4j.Tesseract.doOCR(Unknown Source)
at net.sourceforge.tess4j.Tesseract.doOCR(Unknown Source)
at Auto_Email.TC_10_DeleteEmail.OCR(TC_10_DeleteEmail.java:187)
at Auto_Email.TC_10_DeleteEmail.deleteEmail(TC_10_DeleteEmail.java:147)
at Auto_Email.TC_10_DeleteEmail.DeleteMail(TC_10_DeleteEmail.java:126)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.testng.internal.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:85)
at org.testng.internal.Invoker.invokeMethod(Invoker.java:639)
at org.testng.internal.Invoker.invokeTestMethod(Invoker.java:816)
at org.testng.internal.Invoker.invokeTestMethods(Invoker.java:1124)
at org.testng.internal.TestMethodWorker.invokeTestMethods(TestMethodWorker.java:125)
at org.testng.internal.TestMethodWorker.run(TestMethodWorker.java:108)
at org.testng.TestRunner.privateRun(TestRunner.java:774)
at org.testng.TestRunner.run(TestRunner.java:624)
at org.testng.SuiteRunner.runTest(SuiteRunner.java:359)
at org.testng.SuiteRunner.runSequentially(SuiteRunner.java:354)
at org.testng.SuiteRunner.privateRun(SuiteRunner.java:312)
at org.testng.SuiteRunner.run(SuiteRunner.java:261)
at org.testng.SuiteRunnerWorker.runSuite(SuiteRunnerWorker.java:52)
at org.testng.SuiteRunnerWorker.run(SuiteRunnerWorker.java:86)
at org.testng.TestNG.runSuitesSequentially(TestNG.java:1215)
at org.testng.TestNG.runSuitesLocally(TestNG.java:1140)
at org.testng.TestNG.run(TestNG.java:1048)
at org.testng.remote.AbstractRemoteTestNG.run(AbstractRemoteTestNG.java:126)
at org.testng.remote.RemoteTestNG.initAndRun(RemoteTestNG.java:152)
at org.testng.remote.RemoteTestNG.main(RemoteTestNG.java:57)

我添加了以下所有 JAR 文件: commons-io-2.5 jai-imageio-core-1.3.1 jna-4.4.0 jna-平台-4.4.0 七月到 slf4j-1.7.2 lept4j-1.6.0 logback-classic-1.2.3 logback-core-1.2.3 selenium-server-standalone-2.7.0-patched-sources slf4j-api-1.7.5 tess4j-3.4.0

请有人帮我解决这个问题.. 谢谢。

【问题讨论】:

  • 谢谢 Siddharth Singh,实际上我在真正的 android 设备上运行,我有从 tess4j 文件夹中提取的 libtesseract3051.dll、gsdll64.dll 文件。我已将这两个 dll 添加到我的根项目中名为“dll”的文件夹中。如果我错了,请告诉我.. 我仍然遇到错误。

标签: appium


【解决方案1】:

错误是由于在您的项目设置中没有正确引用所需的 dll 文件。对于 Eclipse 中的 tess4j 项目,您可以在运行配置中的 VM 参数中添加一行,将 dll 文件放在“dlls”文件夹中,并将文件夹保存在项目的根文件夹中,在 Eclipse 工作区中:

-Djna.library.path=${workspace_loc:/name_of_your_project}/dlls

对于 64 位运行时,dll 文件是 gsdll64.dll、liblept168.dll 和 libtesseract302.dll。 dll 文件已经捆绑在 win32 文件夹中的 tess4j jar 中,您可以如上所述提取并添加到您自己的 dll 文件夹中。

【讨论】:

  • 谢谢 Siddharth Singh,实际上我在真正的 android 设备上运行,我有从 tess4j 文件夹中提取的 libtesseract3051.dll、gsdll64.dll 文件。我已将这两个 dll 添加到我的根项目中名为“dll”的文件夹中。如果我错了,请告诉我.. 我仍然遇到错误。
  • 该解决方案适用于 Windows,但对于 Android,您可能需要参考以下链接:linklink
  • 即使我在普通 java 项目中尝试了相同的代码.. 即使我面临同样的问题.. 我真的很努力但没有得到输出:-( .. 它总是说同样的问题......跨度>
  • 请检查 (reachmnadeem.wordpress.com/2014/06/25/ocr-with-tess4j) 使用 tess4j 的 mavenised java 项目。导入项目时,在 Eclipse 中使用 Maven> Existing Maven Projects 选项。 jai_imageio-1.1.jar 的 pom.xml 中将有一个死存储库条目,因此只需在类路径中直接引用它即可。
  • 我使用的是 64 位 Windows,我还没有尝试过 Maven 项目……还有一个疑问,我应该安装 64 位 tessract ocr.exe 吗?如果是,请分享下载 64 位的链接.. 我没有得到它
猜你喜欢
  • 2017-09-17
  • 1970-01-01
  • 2019-08-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-10-18
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多