2

State Based Game を使用して Java で GUI を作成しました。これは拡張されており、真のアプレットではStateBasedGameないJAppletため、Web サイトに配置したいのですが、これを行う方法がわかりません。次のコードで可能であると言われました。 html を使用してこれをアプレットにし、Java コードを編集する必要はありません。

<applet code="org.lwjgl.util.applet.AppletLoader" 
        archive="org.lwjgl.util.applet.AppletLoader" 
        codebase="." 
        width="640" height="480">

  <param name="al_title" value="Ham Blaster"> 
  <param name="al_main" value="org.newdawn.slick.AppletGameContainer"> 
  <param name="game" value="org.javagame.Game">

  <param name="al_jars" value="racegame.jar, lwjgl.jar, slick.jar"> 

  <param name="al_windows" value="windows_natives.jar"> 
  <param name="al_linux" value="linux_natives.jar"> 
  <param name="al_mac" value="macosx_natives.jar"> 

  <param name="separate_jvm" value="true"> 
</applet> 

HTML コードを実行すると、画面の中央に次のエラーが表示されます。

An error occurred while loading the applet. Please contact support to resolve this issue. missing required applet parameter: al_main.

slick の内部を調べましたApplerGameContainerが、chrome ファイルしか見つかりません。これらを html ファイルと同じディレクトリに配置しようとしましたが、それでも同じエラーが発生します。

何か非常に単純で、私に尋ねるにはあまりにも明白に思える場合は、私に教えてください。なぜなら私は Java を初めて使用するからです。このコードの以前のエラーは、同じディレクトリに html と lwjgl_util_applet.jar がなかったことが原因だったので、教えてください。私を助けることができるものは何でも。

4

1 に答える 1

1

ええと...

よくわかりませんが、ソースによると 、エラーは init メソッドから発生します

/*
     * @see java.applet.Applet#init()
     */
    public void init() {
        state = STATE_INIT;

        // sanity check
        String[] requiredArgs = {"al_main", "al_logo", "al_progressbar", "al_jars"};
        for(int i=0; i<requiredArgs.length; i++) {
            if(getParameter(requiredArgs[i]) == null) {
                fatalErrorOccured("missing required applet parameter: " + requiredArgs[i], null);
                return;             
                }

//...           }       
        }

だからあなたのal_mainパラメータ値はnullか何かのようです:S

問題はおそらくここのどこかにある

<param name="al_main" value="org.newdawn.slick.AppletGameContainer"> 

...おそらく、残りの必要なすべてのパラメーターを次のように初期化するのを見ていないからです"al_logo", "al_progressbar"

とにかく、問題のコードを表示する方が役に立ちます


役に立ったら報告

于 2013-01-13T06:53:55.913 に答える