2011-12-05 28 views
6

Javadocを使用しているときに警告をエラーとして扱うことはできますか?特に、私はAntからJavadocを呼び出していて、failonerror="true"を私の<javadoc>タスクに設定しましたが、私はこれを引き起こすように見えません。 javadocが警告を生成しているにもかかわらず、私はまだBUILD SUCCESSFULとなり、終了コードは0です。Javadoc:警告をエラーとして扱いますか?

<javadoc>タスクのadditionalparam属性に何かを追加して、Javadoc警告を強制的に失敗させることができると予想します。

+1

「failonerror」と「failonwarnings」には違いがあります(後者は存在しません)。 –

答えて

0

JavaDocパラメータについてはわかりませんが、このような場合は、checkstyleのようなツールをAntビルドに使用することをお勧めします。 Javadocの警告で失敗するように設定することができます。

+0

あなたのビルドをSonarと統合してより良いものにするhttp://www.sonarsource.org/ –

6

私はこれが古いと知っていますが、私のように答えを探している人にとってはまだ役立つかもしれません。動作しない場合は、出力に表示されるテキストに

<contains text="warnings"/> 

を入力してください。

<target name="javadoc"> 
<delete dir="${jDocDirectory}"/> 
<mkdir dir="${jDocDirectory}"/> 
<record name="javadocLog" action="start"/> 
<javadoc (settings, blah blah) /> 
<record name="javadocLog" action="stop"/> 
     <condition property="javadoc.warnings"> 
      <isfileselected file="javadocLog"> 
       <contains text="warnings"/> 
      </isfileselected> 
     </condition> 
     <fail if="javadoc.warnings">Javadoc warnings!</fail> 
</target> 

編集:あなたは1つの警告これは、あなたがこれを変更する必要があるすべての警告を修正するために、機能しませんしている場合 は:

<contains text="warnings"/> 
+0

これは興味深いようですが、それは私のためには機能しません。私はレコード操作からの出力として1行の空のテキストファイルを取得します。 のように出力を常にフラッシングしているとは限りませんので、読んだときに、期待していたログを含むファイルの代わりに非常に短いファイルが表示される可能性があります。ドローイングボードに戻って、私は思います。 – Trejkaz

+0

警告が1つしかないため、ファイルに「警告」ではなく「警告」が含まれている可能性があります。私たちは、(APIから取り除かれる可能性のあるクラスを使用して)隠されたり修正されたりできなかった警告を出していました。変更する場合 これは役に立ちます。これはまだ問題がないかもしれないので、私たちのために働いています。 – Knoxie

+0

"警告"を使用していますが、ファイルが完全に空であるため、一致しません。私は今なぜがフラッシュしないのかを考えようとしています。ドキュメントは、ターゲットが終了したときにだけフラッシュするかもしれないと言いますので、空のターゲットにを使って強制しようとしましたが、それはどちらかと思われませんでした。 – Trejkaz

関連する問題