0

プロジェクトをコンパイルしようとすると、次のエラーが発生しました。

    java.lang.NoClassDefFoundError: me/hansolox1/tetris/test
Caused by: java.lang.ClassNotFoundException: me.hansolox1.tetris.test
    at java.net.URLClassLoader$1.run(Unknown Source)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(Unknown Source)
    at java.lang.ClassLoader.loadClass(Unknown Source)
    at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
    at java.lang.ClassLoader.loadClass(Unknown Source)
Exception in thread "main" 

しかし、クラス me.hansolox1.tetris.test は、実際のコードをプロジェクトに追加する前に削除しました。このようなエラーが表示されるのは初めてです...助けてください!

編集:

テストクラスを削除しましたが、メソッド「main」を持つ新しいクラス:

package me.hansolox1.tetris;

import org.newdawn.slick.AppGameContainer;
import org.newdawn.slick.GameContainer;
import org.newdawn.slick.SlickException;
import org.newdawn.slick.state.StateBasedGame;

public class tetris extends StateBasedGame {
    public static final int MAINMENU = 0;
    public static final int TETRIS = 1;

    public tetris(){
        super("Tetris!");
    }

    @Override
    public void initStatesList(GameContainer arg0) throws SlickException {
        this.addState(new MainMenu(MAINMENU));
        this.addState(new MainState(TETRIS));
    }
    public static void main(String[] args) throws SlickException{
        AppGameContainer app = new AppGameContainer(new tetris());

        app.setDisplayMode(800, 600, false);
        app.start();
    }
}

私はslick2dエンジンを使用しています...

EDIT2:クリーンアップも試しました

4

3 に答える 3

1
  1. プロジェクトのプロパティ ページに移動します。
  2. 実行/デバッグ設定に移動します
  3. そこに削除されたクラスが見つかった場合は、もう一度削除します。

これは私のために働く!

于 2012-07-12T16:19:48.677 に答える
0

または、Eclipse コマンド ラインで -clean オプションを試すこともできます。これにより、別のクラスへの変更によってどのクラスが影響を受けるかなど、保存されているプロジェクト情報がクリーンアップされます。

于 2012-07-10T20:32:44.030 に答える
0

私の作業ソリューション:

  1. 新しいプロジェクトを作りました
  2. 元のプロジェクトから新しいプロジェクトにすべてのファイルをコピーしました
  3. 新しいプロジェクトをテストした後、古いプロジェクトを削除しました

これがおそらく最悪の解決策であることはわかっていますが、うまくいきました...

于 2012-07-11T09:13:45.787 に答える