JAVAでhellow worldを出力してみます

JAVA

JAVAでソースコードを書いて、コンパイルし、hellow worldを出力したとがないので、やってみます。(いままではIEDとかを使用していました)

次のコードを書いて、hello.javaというファイルに保存します。

public class Hellow {
	public static void main(String[] args) {
		System.out.print("hello");
	}
}

次にDOSコマンドプロンプトを立ち上げて、ソースコードを保存したディレクトリに移動します。

//便宜的に下記のディレクトリを作業ディレクトリにしました
cd C:\works\java

次にソースコードをコンパイルするコマンドを入力します。
コンパイルは「javac」の後にスペースを空けてソースコードを指定します。

C:\works\java>javac hello.java

と、ここで下記のようなエラーが発生しました。

'javac' は、内部コマンドまたは外部コマンド、
操作可能なプログラムまたはバッチ ファイルとして認識されていません。

少し調べてみましたが、原因はまだわかっていません。

PC内の環境変数をチェックしてみましたが、正しくPATHが追加されていました。

(20140828追記)
その後、一旦PCから離れ改めてjavacを実行してみると次のように表示されました。
おそらくですが、JDKをインストールし、環境変数のpathを変更したあとにPCの再起動をした為かと思います。

C:\works\java>javac
使い方: javac <options> <source files>
使用可能なオプションには次のものがあります。
  -g                         すべてのデバッグ情報を生成する
  -g:none                    デバッグ情報を生成しない
  -g:{lines,vars,source}     いくつかのデバッグ情報だけを生成する
  -nowarn                    警告を発生させない
  -verbose                   コンパイラの動作についてメッセージを出力する
  -deprecation               推奨されない API が使用されているソースの位置を出力する
  -classpath <path>          ユーザークラスファイルおよび注釈プロセッサを検索する位置を指定する
  -cp <path>                 ユーザークラスファイルおよび注釈プロセッサを検索する位置を指定する
  -sourcepath <path>         入力ソースファイルを検索する位置を指定する
  -bootclasspath <path>      ブートストラップクラスファイルの位置を置き換える
  -extdirs <dirs>            インストール済み拡張機能の位置を置き換える
  -endorseddirs <dirs>       推奨規格パスの位置を置き換える
  -proc:{none,only}          注釈処理やコンパイルを実行するかどうかを制御します。
  -processor <class1>[,<class2>,<class3>...]実行する注釈プロセッサの名前。デフォルトの検出処理をバイパス
  -processorpath <path>      注釈プロセッサを検索する位置を指定する
  -d <directory>             生成されたクラスファイルを格納する位置を指定する
  -s <directory>             生成されたソースファイルを格納する場所を指定する
  -implicit:{none,class}     暗黙的に参照されるファイルについてクラスファイルを生成するかどうかを指定する
  -encoding <encoding>       ソースファイルが使用する文字エンコーディングを指定する
  -source <release>          指定されたリリースとソースの互換性を保つ
  -target <release>          特定の VM バージョン用のクラスファイルを生成する
  -version                   バージョン情報
  -help                      標準オプションの概要を出力する
  -Akey[=value]              注釈プロセッサに渡されるオプション
  -X                         非標準オプションの概要を出力する
  -J<flag>                   <flag> を実行システムに直接渡す

さらにコンパイルを実行してみると、コンパイルに失敗。

C:\works\java>javac hello.java
hello.java:1: クラス Hellow は public であり、ファイル Hellow.java で宣言しなければなりません。
public class Hellow {
       ^
エラー 1 個

プログラム内のクラス名がおかしいので修正をする。

public class hello {
	public static void main(String[] args) {
		System.out.print("hello");
	}
}

改めてコンパイル

C:\works\java>javac hello.java
C:\works\java>

何事もなく完了。コンパイルしたjavaを実行します。

C:\works\java>java hello
hello

と表示されました。
ケアレスミスが多くとまどりましたが、環境構築はひとまず完了です。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です