Java アプレットで厄介なエラーが発生します。私はアプレットに慣れていないので、これについてはまったく経験がないことに注意してください。
次のコードを含む index.html というラベルの付いた HTML ファイルがあります。
<HTML>
<HEAD>
<TITLE>Applet JAR Example
</TITLE>
</HEAD>
<BODY>
<CENTER>
<B>Are YOU ready to dance??
</B>
<BR>
<BR>
<APPLET CODE="shawn/Main.class" ARCHIVE="lol.jar"
WIDTH=400
HEIGHT=300>
</APPLET>
</CENTER>
</BODY>
</HTML>
同じディレクトリに、次のコードを含む lol.jar というラベルの付いた Jar ファイルがあります。
package shawn;
import java.applet.AudioClip;
import java.awt.*;
import java.io.File;
import java.io.Serializable;
import javax.swing.*;
public class Main extends JApplet implements Serializable {
Image img = Toolkit.getDefaultToolkit().getImage("hey.gif");
@Override
public void init(){
playSound();
}
@Override
public void paint(Graphics g) {
g.drawImage(img, 0, 0, this);
}
public void playSound(){
AudioClip ac = getAudioClip(getCodeBase(), "hey.wav");
ac.play();
}
}
同じディレクトリ内に、hey.wav と hey.gif というラベルの付いた 2 つのファイルがあります。
ページを実行すると、アプレットの読み込みに失敗し、メッセージのみが出力されますError. Click for details
。クリックすると、次のように表示されます。
ランタイム例外
に続く...
java.lang.reflect.InvocationTargetException
Eclipse で実行するとすべてが機能しますが、これはエクスポートした場合にのみ機能します。必要に応じて詳細を追加します。