JavaA2Z

KAB-studio > プログラミング > JavaA2Z > javacとは

javac

日本語 ジャバ翻訳
英語 java compile
ふりがな じゃばしー、じゃう”ぁしー
フリガナ ジャバシー、ジャヴァシー

解説

Javaコンパイラ
コンパイルうコマンド。ソースファイルを1ファイルずつコンパイルする。
 
-sourcepathパラメーターソースファイルディレクトリを指定する。
-classpathパラメータークラスパスを指定する。
-dパラメータークラスファイルの出力先ディレクトリを指定する。
特に、-sourcepathパラメーターを指定するか、-classpathパラメーター-dパラメーターと同じディレクトリを指定しないと、クラスパスが解決できず、自分で作ったプログラムの別パッケージクラス参照できないためコンパイルエラーとなることに注意。
また、-sourcepathパラメーターを指定するか、-classpathパラメーターは「クラスパス」を意識してディレクトリを指定する点に注意。つまり「パッケージルート」に当たるディレクトリを指定すること。
 
javacによるコンパイルは、ソースファイルをまとめて指定できないため非常に不便。
一応*.javaと指定することで特定ディレクトリソースファイルをまとめてコンパイルできる。また、あるソースファイルが他のソースファイルに依存する場合、依存先ソースファイルを先にコンパイルする機能もある。
だが、それでも大規模なプロジェクトとなるとjavacによるコンパイルは非常に不便となる。その場合、AntEclipseを使用した方が良い。

参考サイト

  • (参考サイトはありません)

(KAB-studioからのおしらせです)

サンプルプログラム(とか)サンプルを別ウィンドウで表示サンプルをクリップボードへコピー(WindowsでIEの場合のみ)

// Sample.java
// OtherPackageClassクラスを使うのでインポートします。
import test.test2.OtherPackageClass;

public class Sample
{
    public static void main( String[] args )
    {
        // OtherPackageClassクラスを使います。
        OtherPackageClass otherPackageClass = new OtherPackageClass();
        otherPackageClass.output();
    }
}

// test/test2/OtherPackageClass.java
/**
    つまり、このファイルはtest/test2フォルダの中にあります。
    Sample.javaはtestフォルダと同階層にあります。
    位置関係はこんな感じ。

    project/src/Sample.java
    project/src/test/test2/OtherPackageClass.java
*/
package test.test2;

/**
*   test.test2パッケージ内のクラス。
*/
public class OtherPackageClass
{
    /**
    *   出力します。
    */
    public void output()
    {
        System.out.println( "OtherPackageClass#output()" );
    }
}

/*

・javacコマンドによるコンパイル

ソース: project/src/
出力先: project/bin/

 とします。
 コンソールを開いて、projectディレクトリに移動してください。

> javac -d bin -classpath bin -sourcepath src src/test/test2/OtherPackageClass.java
> javac -d bin -classpath bin -sourcepath src src/Sample.java

 でソースファイル2つをコンパイルできます。
 次の2つのクラスファイルが作られます。

project/bin/Sample.class
project/bin/test/test2/OtherPackageClass.class


・javaコマンドによる実行

> java -classpath bin Sample
OtherPackageClass#output()


 この「-classpath」がクラスパスの指定です。
 binディレクトリに指定していることに注意してください。
クラスファイルひとつひとつを指定するのではなく、パッケージの基準となる
ディレクトリを指定します。

*/
// Sample.java
// OtherPackageClassクラスを使うのでインポートします。
import test.test2.OtherPackageClass;

public class Sample
{
    public static void main( String[] args )
    {
        // OtherPackageClassクラスを使います。
        OtherPackageClass otherPackageClass = new OtherPackageClass();
        otherPackageClass.output();
    }
}

// test/test2/OtherPackageClass.java
/**
    つまり、このファイルはtest/test2フォルダの中にあります。
    Sample.javaはtestフォルダと同階層にあります。
    位置関係はこんな感じ。

    project/src/Sample.java
    project/src/test/test2/OtherPackageClass.java
*/
package test.test2;

/**
*   test.test2パッケージ内のクラス。
*/
public class OtherPackageClass
{
    /**
    *   出力します。
    */
    public void output()
    {
        System.out.println( "OtherPackageClass#output()" );
    }
}

/*

・javacコマンドによるコンパイル

ソース: project/src/
出力先: project/bin/

 とします。
 コンソールを開いて、projectディレクトリに移動してください。

> javac -d bin -classpath bin -sourcepath src src/test/test2/OtherPackageClass.java
> javac -d bin -classpath bin -sourcepath src src/Sample.java

 でソースファイル2つをコンパイルできます。
 次の2つのクラスファイルが作られます。

project/bin/Sample.class
project/bin/test/test2/OtherPackageClass.class


・javaコマンドによる実行

> java -classpath bin Sample
OtherPackageClass#output()


 この「-classpath」がクラスパスの指定です。
 binディレクトリに指定していることに注意してください。
クラスファイルひとつひとつを指定するのではなく、パッケージの基準となる
ディレクトリを指定します。

*/

この単語を含むページ

「みだし」に含まれているページ

「解説」に含まれているページ

はてなブックマーク 詳細を表示 はてなブックマーク ブックマーク数
livedoorクリップ 詳細を表示 livedoorクリップ ブックマーク数
Yahoo!ブックマーク 詳細を表示 users
del.icio.us 登録する RSSに登録
サンプルを別ウィンドウで表示
サンプルをクリップボードへコピー(WindowsでIEの場合のみ)
update:2005/07/22
このページは、Javaプログラミング言語についての用語を網羅した辞書「JavaA2Z」の一ページです。
詳しくは「JavaA2Z」表紙の説明をご覧ください。