我已经制作了我的文件但无法让它在博客上运行。我已经查看了很多关于此的信息,似乎无法让它运行。
我的代码有问题吗?它始终会出现类未找到的问题。
<applet
code = "Snake"
archive = "Snake.jar"
height=300
width=300
codebase="https://sites.google.com/site/zmchenryfilecabinet/filecabinet/">
</applet>
这是命令提示符中 jar tf Snake.jar 命令的输出:
META-INF/MANIFEST.MF
.classpath
Snake.class
Apple.class
applescaled.png
bodySprite.png
headSprite.png
apple.png
Snake.java
controlScreen.jpg
snakehead.png
endAnimation.gif
apple1.png
snakebody.png
.project
在清单中,我的类文件后面有一个空行,在清单中显示为:
Manifest-Version: 1.0
Main-Class: Snake
我的主要课程也以
开头public class Snake extends JApplet{
答案 0 :(得分:1)
我在打开下面的HTML时看到的一些控制台输出。
..
security: SSV validation: running: 1.7.0_25, requested: null, range: null
network: Created version ID: 1.7.0.25
network: Created version ID: 1.7.0.25
security: continue with running version
basic: exception: java.lang.ExceptionInInitializerError.
java.lang.RuntimeException: java.lang.ExceptionInInitializerError
...
Caused by: java.lang.ExceptionInInitializerError
at Snake.<init>(Snake.java:37)
...
Caused by: java.security.AccessControlException:
access denied ("java.lang.RuntimePermission" "exitVM.0")
... 26 more
basic: Removed progress listener: sun.plugin.util.ProgressMonitorAdapter@169a11f
security: Reset deny session certificate store
特别注意:
at Snake.<init>(Snake.java:37)
以及:
..AccessControlException: access denied ("java.lang.RuntimePermission" "exitVM.0")
可能在Snake.java
的第37行,代码正在执行以下操作:
jFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
即使在受信任的applet中也不允许这样做。 applet可能与其他applet共享VM。
如果我的预测是正确的,请尝试改为:
jFrame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
否则,嗯..为了更好的帮助,请发布SSCCE。或者至少是Snake.java
的前37行。 :)
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
</head>
<body>
<h1>Applet</h1>
<applet
code = "Snake"
archive = "Snake.jar"
height=300
width=300
codebase="https://sites.google.com/site/zmchenryfilecabinet/filecabinet/">
</applet>
</body>
</html>
暂且不说。如果您仍然遇到NCDFE问题(通常还有applet开发)。
要在开发过程中解决类/代码缓存问题,请确保在测试运行软件之间刷新Java控制台中的类缓存。
答案 1 :(得分:0)
您是否创建了可执行JAR ?试着看here。
否则,如果您有ClassNotFound错误,则表示您的JAR中缺少某些类。 你在项目中使用了一些库吗?如果是,请确保在可执行JAR中提取它们。