0

私はJavaが初めてなので、質問があります。タイトルで述べたように、VirtualBox で Ubuntu サーバーを実行していますが、パッケージを使用して非常に単純なクラスを実行する際に問題があります。

私はあなたにコードを与えます:

package world;

public class HelloWorld{

public static void main (String[] args){

System.out.println("Hello World")
}
}

非常に単純なコードです。でコンパイルした後javac HelloWorld.java、間違いはありません(これで、どのような間違いが見つかる可能性がありますか)、

  • を実行java HelloWorldすると、メッセージ NoClassDefFoundError が表示されます
  • リターンを実行java world.HelloWorldすると、メイン クラスが見つからないか、読み込めません。

classpath と関係があると思われますが、答えが見つかりません。

4

1 に答える 1

1

クラスパスの問題です。CLASSPATH環境変数を見ると、おそらくクラスパスが何であるかを確認できます。クラスファイルがあるディレクトリをこの CLASSPATH の最後に追加してみることができますが、おそらく最も簡単な方法は次のとおりです。

HelloWorld.javaファイルが というディレクトリにあることを確認すると、次のworldようにコンパイルできます。

javac world/HelloWorld.java

HelloWorld.classこれにより、world ディレクトリにファイルが作成されます。その後、実行してみることができます

java world.HelloWorld

また

java -classpath . world.HelloWorld

同じ場所から。

javac でフラグを使用して-d、ソース (.java ファイル) と同じ場所ではなく、別の場所にクラス ファイルを配置することもできます。

于 2012-07-09T08:34:52.157 に答える