• ベストアンサー

プログラミング

よろしくお願いします。 javaに興味をもってるのですが、市販の本を眺める程度の超初心者です。 Javaのプログラム実行についてですが、市販の本では、コンパイルしてjava [classname]で実行するとあったのですが、全てのプログラムが、実行するときは、java [classname]だけでいいのでしょうか?java [classname]の後に、何かつけたりすることはないのでしょうか?市販の本の内容は、java [classname]で実行できたのですが、ソースコード集みたいなものを実行してみたところ、コンパイルはできるのですが実行ができず、エラーがでます。その本には、実行方法が載ってなかったので、どうすれば実行できるのでしょうか?どんなときに、java [classname]の後に何かつけるとか例があれば、教えてください。よろしくお願いします。 言葉足らずで申し訳ありません。

質問者が選んだベストアンサー

  • ベストアンサー
  • den256
  • ベストアンサー率70% (7/10)
回答No.7

「誤」: java -classpath "C:\folder\" aaa.class 「正」: java -classpath "C:\folder\" aaa ですね。 パッケージが宣言されている場合は、パッケージ名が必要ですね。済みませんでした。 java packagename.aaa ですね。 パッケージ名は、ソースの一番初めに package packagename; という文があると思います。

その他の回答 (6)

  • bnosuke-x
  • ベストアンサー率39% (43/110)
回答No.6

訂正です。 誤「クラスファイルの名前」 正「パッケージ名も含めた、完全クラス名」 です。

evobio
質問者

お礼

ありがとうございました。

  • bnosuke-x
  • ベストアンサー率39% (43/110)
回答No.5

[classname]の部分は、クラスファイルの名前です。 http://java.sun.com/j2se/1.5.0/ja/docs/ja/tooldocs/windows/java.html には、 「この名前には、完全指定のクラス名を使用する必要があります。」 とあります。 これで実行できなければ、クラスパス(classpath)の設定が良くないと思われます。 その際は、別に質問してください。

  • den256
  • ベストアンサー率70% (7/10)
回答No.4

忘れていました。 java -h だと情報が少ないのでオプションを思い出すくらいのことにしか役に立ちません。 詳しい使い方は、次のページを参考にするといいと思います。 http://sdc.sun.co.jp/java/docs/j2se/1.4/ja/docs/ja/index.html http://sdc.sun.co.jp/java/docs/j2se/1.4/ja/docs/ja/tooldocs/win32/java.html です。

evobio
質問者

お礼

ありがとうございました。

  • den256
  • ベストアンサー率70% (7/10)
回答No.3

こんにちわ。 java -h とすることで指定できるオプションを見ることが出来るのですがご存知ですか? -h は、多分、-help の略です。 大体は、 java -classpath "C:\folder\" aaa.class とかして aaa.class が参照しているクラスの場所を指定したりするのですがその辺の問題ではないでしょうか? 間違っていたらすみません。

参考URL:
http://skyandcloud.homedns.org/software/
  • 10940
  • ベストアンサー率21% (41/187)
回答No.2

エラーを掲載していただければもっと状況がわかると思います。

  • ssm3u
  • ベストアンサー率52% (19/36)
回答No.1

public static void main(String args[]) ですので、 java [classname] の後ろに引数がつくこともあります。 <例(今日の日付を引数に渡す)> java TestJava 20070118 当然、args[]ですので、複数の引数を渡すことができます。 以下、ご質問では聞かれていませんが・・・ あとは、 java と [classname] の間に何かつける場合もあります。 クラスパスの指定や、アサーションの設定等です。 java -classpath /.../.../.../ [classpname] java -ea [classpath]

evobio
質問者

お礼

ありがとうございました。

関連するQ&A

専門家に質問してみよう