【问题标题】:Why do I get a java.lang.UnsatisfiedLinkError for com.sun.webkit.dom.HTMLInputElementImpl.clickImpl(J)V on Ubuntu 14.04.5为什么我在 Ubuntu 14.04.5 上收到 com.sun.webkit.dom.HTMLInputElementImpl.clickImpl(J)V 的 java.lang.UnsatisfiedLinkError
【发布时间】:2018-01-22 20:59:41
【问题描述】:

由于某种原因,我得到了这个 execption

Exception in thread "JavaFX Application Thread" io.webfolder.ui4j.api.util.Ui4jException: java.lang.UnsatisfiedLinkError  com.sun.webkit.dom.HTMLInputElementImpl.clickImpl(J)V
    at io.webfolder.ui4j.webkit.aspect.WebKitAspect$CallableExecutor.run(WebKitAspect.java:41)
    at com.sun.javafx.application.PlatformImpl.lambda$null$172(PlatformImpl.java:295)
    at java.security.AccessController.doPrivileged(Native Method)
    at com.sun.javafx.application.PlatformImpl.lambda$runLater$173(PlatformImpl.java:294)
    at com.sun.glass.ui.monocle.RunnableProcessor.runLoop(RunnableProcessor.java:92)
    at com.sun.glass.ui.monocle.RunnableProcessor.run(RunnableProcessor.java:51)
    at java.lang.Thread.run(Thread.java:748)
Caused by: java.lang.UnsatisfiedLinkError: com.sun.webkit.dom.HTMLInputElementImpl.clickImpl(J)V
    at com.sun.webkit.dom.HTMLInputElementImpl.clickImpl(Native Method)
    at com.sun.webkit.dom.HTMLInputElementImpl.click(HTMLInputElementImpl.java:506)
    at io.webfolder.ui4j.webkit.dom.WebKitElement.click_aroundBody50(WebKitElement.java:299)
    at io.webfolder.ui4j.webkit.dom.WebKitElement$AjcClosure51.run(WebKitElement.java:1)
    at io.webfolder.ui4j.internal.aspectj.runtime.reflect.JoinPointImpl.proceed(JoinPointImpl.java:149)
    at io.webfolder.ui4j.webkit.aspect.WebKitAspect$CallableExecutor.run(WebKitAspect.java:39)
    ... 6 more

我的系统是

~# lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 14.04.5 LTS
Release:    14.04
Codename:   trusty

而我的JAVA版本是

:~# java -version
java version "1.8.0_151"
Java(TM) SE Runtime Environment (build 1.8.0_151-b12)
Java HotSpot(TM) Server VM (build 25.151-b12, mixed mode)

如果我在 so-lib 上运行 nm 命令,我似乎认为该函数在那里

:~# nm /usr/lib/jvm/java-8-oracle/jre/lib/i386/libjfxwebkit.so | grep HTMLInputElementImpl | grep clickImpl
010254b0 t Java_com_sun_webkit_dom_HTMLInputElementImpl_clickImpl

我在这一切中缺少什么?

我多次尝试重新安装 Java,但都没有帮助。

【问题讨论】:

  • 我也面临这个问题。 jdk1.8.0_172、jdk1.8.0_162、jdk1.8.0_161、jdk-10.0.1、jdk-9.0.4。没有人工作。
  • 我在 mac 上遇到了同样的问题。似乎是一个不完整的实现。如果您找到了原因,很乐意听到任何更新!

标签: java linux ubuntu javafx unsatisfiedlinkerror


【解决方案1】:

我在 macOS 上遇到了同样的问题。一种解决方法是检查节点/元素是否为 type==submit 的 HTMLInputElement,在这些情况下调用 .getForm().submit()。

【讨论】:

    【解决方案2】:

    我在 JDK-14 和 JFX-14 中遇到了同样的问题。我的解决方法是改用 webEngine.executeScript,因为 getForm() 为我的用例返回 null。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-06-04
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多