簡単な質問です。 ANTビルドの場合、debuglevel
パラメーターを完全に省略した場合、すべてのデバッグ情報を使用してコンパイルされますか?または、javacタスクにdebuglevel="lines,vars,source"
を含める方がよいでしょうか?可能な限り最大レベルのデバッグを有効にしたい。スニペットは次のとおりです。
<javac srcdir="${dir.source}"
destdir="${dir.classes}"
deprecation="${javac.deprecation}"
debug="${veracode.release.mode}"
debuglevel="lines,vars,source" <-- should I leave this line out? -->
optimize="${javac.optimize}">
簡単な答え:はい、debuglevel
属性をdebug
に設定している限り、true
属性を省略できます。
javac Ant task
ドキュメントから:
デバッグ
ソースをデバッグ情報とともにコンパイルする必要があるかどうかを示します。デフォルトはオフです。 offに設定すると、-g:noneは、それをサポートするコンパイラーのコマンドラインに渡されます(他のコンパイラーの場合、コマンドライン引数は使用されません)。 trueに設定すると、debuglevel属性の値によってコマンドライン引数が決まります。
debugLevel
-gコマンドラインスイッチに追加されるキーワードリスト。これは、modern、classic(ver> = 1.2)、およびjikesを除くすべての実装で無視されます。有効な値は、none、または次のキーワードのコンマ区切りのリストです:lines、vars、およびsource。 debuglevelが指定されていない場合、デフォルトでは、-gには何も追加されません。debugがオンにしない場合、この属性は無視されます。
したがって、debug
をtrue
に設定し、debugLevel
を省略することは、オプションを追加せずにフラグ-g
を渡すことと同じです。 javac
のドキュメントによると、何も追加せずに-g
フラグを渡すことは、ソース、行、および変数を指定することと同じです。