我有一个按钮所在的WebView。按下时,应调用控制器中的方法。
控制器
public class Controller
{
public void out(String a)
{
System.out.println(a);
}
}
JS
function clickButton() { controller.out("test");}
代码在示例中给出。问题是在Windows中一切正常。但在Debian上,它可以通过时间运行。使用OracleJDK和OpenJDK帮助测试。结果是一样的。我确信控制器已连接,正如我所说,在Windows上所有工作,在Debian上随着时间的推移。
答案 0 :(得分:1)
解决。问题出在linux gc上。通过反思,我找到了控制器并添加了它们。过了一会儿,gc删除了弱链接。所以,使用像
这样的类字段控制器控制器=新控制器(); window.setMember(" controller",controller);
非常感谢 Cannot call JavaFX from WebView JavaScript on Windows (VirtualBox)