我刚刚下载了 Topcoder Arena小程序但我无法启动它。我是在 JDK 14在Windows 8.1x64上。
我尝试了以下方法。
javaw ContestAppletProd.jnlp
什么也没做
java ContestAppletProd.jnlp
Error: Could not find or load main class ContestAppletProd.jnlp
Caused by: java.lang.ClassNotFoundException: ContestAppletProd.jnlp
没有 javaws.exe
在我的JDK中。
我该怎么做?
好吧,简单的解决方法是抓取Java 8,因为这仍然带有webstart (javaws.exe
).
我看了一下这个应用程序,它与Java 10或更高版本不兼容。
特别是,它包含了相当于下面的代码。
if (System.getProperty("java.version").charAt(2) <= '5') {...}
因为Java 9的编号已经改变了 (System.getProperty("java.version")
返回 9
, 10
......)这将抛出一个 IndexOutOfBoundsException
. (如果我想起来了,它确实会检查第一个字符,如果它大于 '1'
- 所以它可以再次与Java 20工作)
罐子是签了字的,签了字的人以后还要检查,所以没有简单的办法。