Java プロジェクトの build specification (ビルドスペック) ファイルの形式
Java プロジェクト用の Klocwork build specification (ビルドスペック) は、kwinject.out
というデフォルト名のセミコロンで区切られたテキストファイルです。このファイルには、Klocwork プロジェクトの Java ソースファイルに関する次の情報が含まれています。
jconfig
行で特定される javac 呼び出しのためのクラスパスおよび Java のバージョンjcompile
行で特定されるコンパイルされたソース Java ファイルjar
行で識別される jar ファイルとその入力ファイル
各行の最初のフィールドは、行のタイプを識別するタグです。使用されるタグは次のとおりです。
タグ | 説明 |
---|---|
version | build specification (ビルドスペック) 形式のバージョン |
jconfig | Java のバージョンやクラスパスなど、Java のコンパイラオプションを定義するために使用 |
jcompile | コンパイルされたソースファイルを指定するために使用 |
jar | jar ファイルとその入力ファイルを指定するために使用 |
バージョン行
バージョン行は、build specification (ビルドスペック) 形式のバージョンを定義するために使用されます。これは build specification (ビルドスペック) の最初の行にする必要があります。build specification (ビルドスペック) に使用できるバージョン行は 1 行のみです。
バージョン行の例:
version;108
バージョン 1.4 以降は、build specification (ビルドスペック) がソースエンコーディングに UTF-8 を使用して生成され、マルチバイト文字 (日本語など) が許可されていることを示します。kwbuildproject により build specification (ビルドスペック) が UTF-8 エンコーディングで処理されることを保証するには、バージョンが version;104
以降である必要があります。
jconfig 行
jconfig 行は、Java バージョンやデフォルトのクラスパスといった Java コンパイラオプションを特定するために使用されます。
jconfig 行の例:
Unix の場合
jconfig;/space/testing/java/jdk1.7.0_25/bin/javac;-classpath;/space/testing/java/jdk1.7.0_25/jre/lib/resources.jar:/space/testing/java/jdk1.7.0_25/jre/lib/rt.jar;-source;1.7
Windows の場合
jconfig;c:\program files\java\jdk1.7.0_67\bin\javac.exe;-classpath;c:\program files\java\jdk1.7.0_67\jre\lib\resources.jar%3Bc:\program files\java\jdk1.7.0_67\jre\lib\rt.jar;-source;1.7
次の 3 つのフィールドがあります。
フィールド | 説明 |
---|---|
jconfig タグ | jconfig 行のタグ |
コンパイラ | javac コンパイラのパス (/opt/sun1.7/bin/javac など) |
オプション | ソースバージョンとクラスパスをリストする区切られたコンパイラオプションリスト、-classpath;/space/testing/java/jdk1.7.0_25/jre/lib/resources.jar:/space/testing/java/jdk1.7.0_25/jre/lib/rt.jar;-source;1.7) クラスパスエントリは Unix では ":"、Windows では "%3B" で区切られています。 |
jcompile 行
各 jcompile 行は、Java ソースファイルのコンパイルを追跡するために使用されます。
jcompile 行の例:
jcompile;/space/testing/java/jdk1.7.0_25/bin/javac;/space/testing/run/scripts/kwinject/javac/basic/A;a.java
フィールドは次のとおりです。
フィールド | 説明 |
---|---|
jcompile タグ | jcompile 行のタグ |
コンパイラ | javac 実行可能ファイルのフルパス |
ターゲット | 生成される .class ファイルまたは .jar ターゲットファイルのフルパスを含むディレクトリ |
ソースファイル | ソースファイルのフルパス名 |
jar 行
各 jar 行は、jar の実行、つまり .jar ファイルの作成方法を追跡するために使用されます。
jar 行の例:
jar;/space/testing/run/scripts/kwinject/javac/basic/A.jar;/space/testing/run/scripts/kwinject/javac/basic/A/A.class
フィールドは次のとおりです。
フィールド | 説明 |
---|---|
jar タグ | jar 行のタグ |
出力ファイル | .jar 出力ファイルのフルパス |
入力ファイル | .class ファイル、ディレクトリ、または .jar ファイルのセミコロン区切りリスト |