2

JDK12中的applet查看器有什么替代品吗?

我是 Java 新手,我尝试在 Java 中添加 AWT 复选框它在 JDK 1.8 中运行良好,但在 JDK12 中没有运行。

我在互联网上搜索,发现小程序查看器已弃用。(Applet API 已弃用,不可替代)在官方 oracle 的帮助网页上。

我搜索了这个问题并没有得到令人满意的答案,所以我在这里发布......

import java.applet
import java.awt.*;

 /*
<applet code="CreateCheckBox" width=200 height=200>
</applet>
*/
public class CreateCheckBox extends Applet{

public void init(){
    Checkbox checkBox1 = new Checkbox();
    checkBox1.setLabel("My Checkbox 1");
    Checkbox checkbox2 = new Checkbox("My Checkbox 2");
    add(checkBox1);
    add(checkbox2);
}
}

它应该在 JDK12 中工作,因为它在 JDK1.8 中运行。

4

1 回答 1

2

官方没有办法在 Java 11 或更高版本上运行小程序:

  • appletviewer应用程序已被删除。
  • java.applet.*小程序所依赖的类已被删除。

    更正:他们还没有这样做,但我希望他们很快就会这样做。

小程序应该被视为死技术。

可以想象实现您自己的appletviewer类版本并将它们与您的小程序代码一起放入一个 JAR 文件中。它应该工作。然而,这是一个坏主意。小程序的主要用例是在网站中嵌入 Java,这将不起作用,因为现代浏览器不再支持 Java 插件。(事实上​​,许多最近的浏览器都在积极阻止 Java 插件!)

最好的办法是使用不同的技术重写小程序,具体取决于它们所做的事情:

  • AWT / 摇摆
  • JavaFX
  • SWT
  • HTML 5
  • 等等

你说:

它应该在 JDK12 中工作,因为它在 JDK1.8 中运行。

这在逻辑上是不正确的。

于 2019-07-27T13:48:21.143 回答