2006-07-01から1ヶ月間の記事一覧

${}の置き換え

Antでは、プロパティ値は${}で囲って指定できる。 でもConditionとして使うクラスだと、この表記が解決されずに設定される。 なぜだ。 でも、こんなんで変換できた。 String replStr = getProject().replaceProperties(str); ProjectクラスにはresolveFileと…

JavaWorld

・・・。 http://www.idg.co.jp/d/jw_ita/ 廃刊にはならんでくれ。

自作タスクでのFileSet

自分で作ったタスクでFileSetを使い、FileSetからjava.io.Fileの一覧を取得する。 まず、フィールド関連の定義。 private List filesets = new ArrayList(); public void addFileSet(FileSet fileset) { this.filesets.add(fileset); }んで、一覧の取得。 ほ…

Velocityプラグインメモ

Velocityのテンプレートをエディタでがりがり書くのうぜぇとか思ってたら、 案の定プラグインがあった。 veloeclipse Velocity Web Edit なんでも探してみるもんなんだな・・・。

0での割り算

0で割ったときの違い。 忘れてたので。 intの場合。 int a = 0; int b = 3; int c = b / a; System.out.println(c); → java.lang.ArithmeticException: / by zerodoubleの場合。 double a = 0; double b = 2; double c = b / a; System.out.println(c); → In…

Lengthタスク

Antのタスクで、Lengthというまたまた見慣れぬものがあったので、さわってみる。 マニュアルによると、1.6.3に入ったらしい。けっこう新しめ。 機能としては、文字列とかファイルの長さを出してくれるっぽい。 まずはてきとーに。 実行結果。 exec: [length]…

TreeSetに惑わされ。

TreeSetを使っていたが、なぜかうまーく値が保持されない。 なんでだろーと思ってAPIを見ていると、こんな記述が。 TreeSetから引用 セットが Set インタフェースを正しく実装する場合は、明示的なコンパレータの提供の有無にかかわらず、セットで管理される…

Importタスク

Importタスクという見慣れないものがあったので、使ってみた。 その名の通り、別ビルドファイルをImportできるらしい。 ターゲットのオーバーライドも可能だとか。 普通に使う というわけで、インポートされるファイル。 インポートするファイル。 実行結…

続・コピペソースの検出

Checkstyleでもできた。 プラグインの設定画面からだと、Duplicatesの Strict Duplicate Codeってやつらしい。 でも、エラーが片方のソースにしか出てこない・・・。

ThreadLocal

ThreadLocalを使ってみる。 名前の通り、Thread毎に値を保持できる。らしい。 てきとーにさわってみる。 public class TLTest2 extends Thread { private static ThreadLocal tl = new ThreadLocal(); public static void main(String[] args) { for (int i …

Relaxerメモ

Relaxerをこことここを参考にさわったメモ。 落とす。 いろいろダウンロード。 落としたもの。 Relaxerプラグイン trang msv(興味本位で、下では使ってない) スキーマの作成 1から作成するのはめんどいので、既存のXMLからスキーマを作成しちゃる。元のXML…

コピペソースのチェックツール

Simian 非商用はタダ。 CPD PMD(静的チェックツール)についてくる。

Cobertura

Coberturaのbranchで、変な値が出る。 例えば次のようなソースがあったとする。 public class BranchTest { public Branch() { } public void branch(boolean b) { if (b) { // なんかしらの処理1 } else { // なんかしらの処理2 } } }このソースに対して、b…

カバレッジ取得ツールメモ

オープンソースで使えそうなもの。 Cobertura HTMLレポートで、ソースの日本語部分が文字化けすることがある。しゃーないか。 EMMA こいつも文字化けする。あとブランチが出ない。 djunit(jcoverage) Antから実行する場合、instrumentしなくていいから、ちょ…

StopWatchメモ

Commons LangにStopWatchなるクラスがあったので試してみる。 名前の通り、StopWatchらしい。 メソッドの実行時間なんかを取得するときは、System.currentTimeMillis()を 使っていたけど、このクラスを使っても同じことができる。 まずは、今までのSystem.cu…

Findbugs

FindbugsでソースをチェックするようなAntを書いてたんだが、 XML出力にエラー情報のメッセージが出ない。 んで、半日くらい戸惑ったんだが・・・。 output="xml:withMessages" とすればいいらしい。 あのー、日本語のマニュアルに載ってなくて、 ソースコー…

カバレッジ取得ツール

Cobertura=コベルトゥーラ 読めん。

Eclipse依存のAntの実行

Eclipse内のAntとして実行する必要のあるものを、Eclipseを起動しないまま(正しくは違うけど)実行する。 この前はbatからの実行だったので、どうせならAntから実行するように改造してみた。 実行するのは、Eclipse Metrics Plugin(Frank Sauer)でのメトリ…

Eclipse3.2

Eclipse3.2が出たので、早速さわってみた。 表面上はほとんど変わってないけど、 細かい部分でけっこう変わっているような。 JUnit4に対応してるっぽいし。 equals、hashCodeの生成はうれしいけど、 equalsのコードはいけてないような・・・。 Stringのフィ…