我写了JSNI来检测java版本,但是在最新的浏览器版本如chrome,IE,Firefox中它不起作用(无法获取java版本)
I wrote JSNI to detect java version, but it does not work(can not get java version) in the latest browser version such as chrome,IE,Firefox
我使用了 JSNI,但它在最新版本的浏览器(eg.chrome、IE、Firefox)中不起作用!我在下面写了这段代码:
public static native boolean detectJavaVersion() /*-{
try {
var javaVersions = $wnd.deployJava.getJREs();
alert("Your windows Java version is : " + javaVersions);
if (javaVersions.length == 0) {
alert("You have not installed any types of Java in your system");
return false;
}
if (javaVersions < "1.8") {
alert("Java version is less than 8");
return false;
} else {
alert("Java version is 8 or more than it");
return true;
}
}
catch
(err) {
var exceptionMsg = err.message;
alert("Exception is : " + exceptionMsg);
}
}-*/;
我花了一个多星期才修复它!!!
有人可以给我一个建议吗?
非常感谢。
There is no Java in modern browsers(Chrome、Firefox、Edge、Safari),这可能就是您的代码失败的原因。
你仍然可以编写 Java 代码并让 GWT 将其编译成 Java 脚本,这样它就可以 运行 在浏览器中。您可以使用的 Java 功能取决于 GWT 编译器支持,而不是浏览器。
我使用了 JSNI,但它在最新版本的浏览器(eg.chrome、IE、Firefox)中不起作用!我在下面写了这段代码:
public static native boolean detectJavaVersion() /*-{
try {
var javaVersions = $wnd.deployJava.getJREs();
alert("Your windows Java version is : " + javaVersions);
if (javaVersions.length == 0) {
alert("You have not installed any types of Java in your system");
return false;
}
if (javaVersions < "1.8") {
alert("Java version is less than 8");
return false;
} else {
alert("Java version is 8 or more than it");
return true;
}
}
catch
(err) {
var exceptionMsg = err.message;
alert("Exception is : " + exceptionMsg);
}
}-*/;
我花了一个多星期才修复它!!! 有人可以给我一个建议吗? 非常感谢。
There is no Java in modern browsers(Chrome、Firefox、Edge、Safari),这可能就是您的代码失败的原因。
你仍然可以编写 Java 代码并让 GWT 将其编译成 Java 脚本,这样它就可以 运行 在浏览器中。您可以使用的 Java 功能取决于 GWT 编译器支持,而不是浏览器。