5

コードでこのようなものを見るのはよくあることですが、うまくいけば開発中にのみです。

//XXX: not in production!
String password = "hello"; // getActualPassword(...);
...
catch(Exception e) { /* TODO: Auto-generated catch block*/ }

ant に a) 警告 (TODO: / FIXME: タグで) または失敗 (XXX: または同様のもので) を実行できるようにしてほしい
ビルド サーバーは Linux で、自家製で、ant に基づいています。Windowsでなくても、少なくともLinuxで動作する必要があります。

また、代替手段がファイルのコミットをブロックすることである場合は、perforce を使用します。
Eclipseも使用していますが、致命的なエラーになるとは思いません。(はい、タスク ビューがありますが、特定のタグをビルド ブレーカーに昇格できるようにしたいと考えています)

4

5 に答える 5

6

たぶんあなたはCheckstyleを使うことができます。TODOコメントのチェックがあり、checkstyleをAntタスクとして実行できるので、目的を達成できると思います。

于 2009-10-28T11:07:40.483 に答える
5

これらのチェックには、ant 条件を使用できます。

<condition property="isSourceFileOK">
    <not>
        <isfileselected file="${source}">
            <contains text="TODO" casesensitive="yes"/>
        </isfileselected>
    </not>
</condition>
<fail unless="isSourceFileOK" message="Source contains TODO!" />
于 2009-10-28T12:03:19.850 に答える
3

Perforce バリアントに関しては、そのためのトリガーを書きたいと思うでしょう。詳細については、トリガーに関する perforce ドキュメントを参照してください。あなたの場合、ファイルコミットの前にPerforceサーバー上のファイルコンテンツを表示するために、「change-content」トリガーを記述します。

トリガー内でp4 files //depot/...@4711は、変更のファイルのリストを取得するために使用できます (この場合は 4711 ですが、コマンド ラインでトリガーに渡されます。ファイルp4 print -q //depot/path/to/file@4711の内容を取得するために使用するファイルごとに、これをスキャンしてキーワード (TODO/XXX) を探します。TODO の場合は stdout に警告を出力し、コード 0 で終了するとコミットが成功し、XXX の場合はコード 1 で終了してコミットが失敗します。

于 2009-10-28T16:48:27.753 に答える
2

まず、jassuncaoが正しいです。ここのドキュメントによると、Checkstyleはあなたが求めていることを行います。「車輪を再発明するな」という怒りを招く危険を冒してでも、あなたが達成したいことは、Ant タスクの書き方を学びたい人にとっては良い問題であると提案するかもしれません。

于 2009-10-28T12:05:45.447 に答える
0

Ant TODOタスクを使用することもできます。

于 2011-08-22T10:36:27.243 に答える