2012-04-05 8 views
0

私はちょうどJava(約1週間前)を学び始めました。最後の数日、Slick2Dを使って少しゲームを作っています。とにかく、いつでも私は日食からJARをエクスポートし、「Javaのblahblahblah.jar」でそれを実行し、私は次のエラーを取得する:Eclipse JARエクスポートが機能しない

Exception in thread "main" java.lang.NoClassDefFoundError: /Users/andy/Desktop/game/jar 
Caused by: java.lang.ClassNotFoundException: .Users.andy.Desktop.game.jar 

すべてがエクスポートされるようにチェックされ、LWJGLとSlick2D jarはlibフォルダにあり、私はFatJarを試しました。私はインターネットを見てきましたが、私はうまくいく解決策を見つけることができません。

助けが必要ですか? classNameが定義されたメインとクラスです

java -cp your_jar.jar package.name.ClassName 

+0

使用しているコマンドはなんですか? は /Users/andy/Desktop/game.jar – daveb

+0

のjavaそれはどちらもうまくいかないようです。パッケージは次のとおりです。 パッケージslick.path2glory.SimpleGame; しかし、これはレスポンスです: のjava -cp〜/デスクトップ/ game.jar java.lang.NoClassDefFoundErrorのスレッドでslick.path2glory.SimpleGame.SimpleGame 例外 "メイン":ORG/newdawn /スリック/ BasicGame – andy

+0

ベアリング・ – andy

答えて

5

Anyway, whenever I export a JAR from eclipse and run it with 'java blahblahblah.jar' I get the [an error]

をそれらを分離、クラスパスに複数のJARファイルを指定する必要がある場合:

java -jar blahblahblah.jar 

編集: 元の投稿へのコメントに基づいて、マニフェストなしでjarをエクスポートしているようです。エクスポートメニューからRunnable Jarを選択してください。また、エクスポート中に有効なRun Configurationを選択してください。

+0

彼のコメントにはすでにあるが、マニフェストは設定されていない – daveb

+0

返されるもの: メインクラスのマニフェスト属性のロードに失敗した/Users/andy/Desktop/game.jar – andy

+0

ええ、私はそれを読んで編集しました。 –

1

はこれを試してみてください。

-cpスイッチは、javaがクラスを見つけるために使用する場所を指定するclasspathを意味します。

これ以降は、エントリポイントとして使用するクラスの名前です。引数をmainメソッドに渡したければ、クラス名の後ろに行くでしょう。

あなたはあなたが使用する必要が窓にLinux上でコロンやセミコロンで

+0

からメイン-Classマニフェスト属性の読み込みに失敗しました:私も-jar試みたと私は心の中で取得/Users/andy/Desktop/game.jar – andy

+0

だから、それはですあなたのクラスを今見つけましたが、この他のクラスは見つかりませんでした。そのクラスはどこに定義されていますか?別のjarファイルでEclipseをインポートしましたか? – daveb

+0

クラスパスにSlick2DおよびLWJGL jarを含める必要があるためです。 'java -cp your_jar.jar:Slick2d.jar:LWJGL.jar package.name.ClassName' –

関連する問題