gpt4 book ai didi

java - 如何在 jar 文件中制作 Frame/Applet 应用程序?

转载 作者:太空宇宙 更新时间:2023-11-04 08:24:34 27 4
gpt4 key购买 nike

我有一个示例代码App.java:

import javax.swing.*;
import java.awt.*;

public class App extends JApplet
{
public void init()
{
getContentPane().add(new JLabel("App"));
}

public static void main(String[] args)
{
JApplet aplet = new App();
JFrame frame = new JFrame("App");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.getContentPane().add(aplet);
frame.setSize(300,300);
aplet.init();
aplet.start();
frame.setResizable(false);
frame.setVisible(true);
}
}

我通过compile.bat编译它:

@echo off
cls
del *.jar
javac *.java
jar cfe App.jar App *.class
del *.class

当我双击App.jar时,我看到一个带有文本的框架。这就是我想要的。

如何在 html 页面上显示此内容?

我尝试了下面的代码,但它不起作用:

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
<title>App</title>
</head>
<body>
<center>
<h1>App</h1>
<applet codebase="classes" code="App.class" archive="App.jar
width="300" height="300" " />
</center>
</body>
</html>

页面显示错误。点击查看详情。当我点击时,我看到:

load: class App.class not found.
java.lang.ClassNotFoundException: App.class
at sun.plugin2.applet.Applet2ClassLoader.findClass(Unknown Source)
at sun.plugin2.applet.Plugin2ClassLoader.loadClass0(Unknown Source)
at sun.plugin2.applet.Plugin2ClassLoader.loadClass(Unknown Source)
at sun.plugin2.applet.Plugin2ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.plugin2.applet.Plugin2ClassLoader.loadCode(Unknown Source)
at sun.plugin2.applet.Plugin2Manager.createApplet(Unknown Source)
at sun.plugin2.applet.Plugin2Manager$AppletExecutionRunnable.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Exception: java.lang.ClassNotFoundException: App.class

当我在 html 上发布 App.class 时,一切正常。我无法发布 App.jar。我怎样才能做到这一点,以便它既可以作为小程序又可以作为框架使用?

最佳答案

我刚刚从 html 中删除了 codebase="classes" 并且一切正常:)。

关于java - 如何在 jar 文件中制作 Frame/Applet 应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8869861/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com