2007-01-01から1年間の記事一覧

Eclipse Plugin 開発勉強会(EclipSKY)

参加してきました。今回はソースコードを読むというちょっとマイナー(?)な感じでしたが、 非常に楽しい時間を過ごせました。 自分は、普段は必要にならないとソースを読むことはないんですが、 数人で集まって色々と考えながらソースを読むというのもいいな…

こんな機能があったのかと

今更ながら気付いたもの×2 Javaファイルの種類別のラベル装飾 Window>Preferences>General>Appearance>Label Decorationsで Java Type Indicatorにチェックを付けると、Javaファイルのアイコンに 種類に応じて小さいマークが付くようになる。 マークが…

void

ふと、voidを辞書で調べてみた。 1 (通例a 〜)空虚感, 喪失感, 物足りなさ, 心の空隙 ・・・ Yahoo!の辞書より なんかかなしい。 つまり、呼び出し側は戻り値が返ってこないむなしさを ひしひしと感じてしまうから、voidなのか。うむ。 ・・・。 ちょっと時…

クラスパスを自動で追加するプラグイン

自分の場合、とあるライブラリのテスト用とか、ちょっとしたツール用なんかで Eclipseのプロジェクトをけっこうたくさん作成する。 このとき、プロジェクトのプロパティ画面でクラスパスにライブラリを追加する必要があるけど、 この手順がけっこうめんどい…

Bundle#getEntryが返すURL

下のようなコードをたまーに見かける。 Bundle hogeBundle = ・・・ URL url1 = hogeBundle.getEntry("[とあるファイル]"); URL url2 = FileLocator.toFileURL(url1)FileLocatorにわざわざtoFileURLというメソッドがあるということは、 Bundle#getEntryが返…

Eclipse Plugin 開発勉強会(eclipSKY)

行ってきました。 そして、たいしたことしてないのになんだか疲れた・・・。 正直、休日にプラグインというテーマであんなにたくさんの人が集まることにびっくりです。 しかも非常に濃いメンバーだったので、すごく楽しめたし勉強になりました。 発表者のみ…

ホイールクリックでタブを閉じるプラグイン

たまたま発見した。 Middle Click Closes Tab エディタのタブの部分をホイールクリックすると、 そのタブを閉じることができます。 まぁエディタだったらCtrl+Wで十分だけど、 ビューのタブでも閉じることができたりします。 個人的には、ブラウザとかファイ…

BOMとjavac

Windowsのメモ帳でUTF-8で保存すると、 ファイルの先頭にBOMと呼ばれるものが付加される。 これがあると、javacでコンパイルが通らなくなる。 -encodingを指定してもだめ。 Test.java:1: \65279 は不正な文字です。 ?サソclass Test{ ^ エラー 1 個 そもそも、…

mutation testing

Seasar Conference 2007 Autumnの和田さんのセッションで知った。 Jumbleを使うとできる、テスト対象を変更することで テストケースを検証することをmutation testingと呼ぶらしい。 JSTQBの用語集だと変異テストと訳されている。 「mutation testing」とか…

行番号を印刷

EclipseでJavaのファイルを印刷すると、きれいに出る(ような気がする)ので、 好きなんだけど、1つだけ難点がある。 それは、行番号が印刷されないこと。 これまでだと、前に日記に書いたJava2Htmlを使って回避する 方法がメジャーだったみたい。 でも、Ecl…

出張して思ったこと

PCがほしい とにかくほしい。携帯できるやつ。 あとネット接続環境も。 1日PCにさわれないだけで、かなりやばいっすww # 嫁に最新情報で負けたのが悔しい 赤字になる不思議 会社から宿泊代とか日当が出る。でも赤字になる(汗 単に自分へのお土産が多すぎ…

配列の最後の要素後にカンマ

String[] hoge = {"a", "b",};まぁ、動作にはかんけーないけど、 気持ち悪いからエラーにしてほしいなぁ。 A型すぎ?

Jumble使ってみた

すげー面白い。 プラグインもあるので、さくっと試せるし。 というわけで、簡単にまとめてみる。 概要 Jumbleとは 作成したテストケースの有効性を検証するツール。 テストケースの点数を0%(悪い)から100%(良い)の値で出力する。 どーやって検証するのか テ…

Telnetにすこしふれる

kompiroさんのコード(http://d.hatena.ne.jp/kompiro/20071029/)を、 WindowsのTelnetサーバに向けてやってみた。 そして、ログイン後でいきなり文字化けしたorz 解析すると、カーソルとか画面を制御するようなエスケープシーケンスが 一緒に返ってきている…

PMBOK

ってピンボックが正しいのか・・・。 ずーっとピーエムボックだと思ってた。 英語圏でもピンボックって言うのかな?

メソッドの長さの限界

メソッドが大きすぎる場合、Eclipseだとこんなエラーが出る。 The code of method [メソッド名] is exceeding the 65535 bytes limit javacだとこんな感じ。 Hoge.java:2: コードが大きすぎます。 public void method() { ^ エラー 1 個 エラーが出ないぎり…

条件付きブレークポイント

Eclipseでデバッグする際に使うブレークポイント。 こいつに、条件を満たした場合だけ実行を止めるように設定できたらしい。 地味に知らなかった。 ブレークポイントを右クリ>Breakpoint Propertiesを選択 てきとーに条件を入力する。 条件には、そのブレー…

アノテーションInherited

某ソースを眺めてたら、アノテーションで@Inheritedというのが使われていたけど、 Javadocを読んでも何を言ってんだかよくわからない。 すこし調べてみると、継承したクラスにそのアノテーションが引き継がれるかどうか、 という意味があるらしい。 というわ…

JUnit-addonのFileAssertにバグ

隣の人から聞いて、確かにそうだなーってなお話。 JUnit-addonsのFileAssertのassertEqualsにはバグがあって、 ファイルの大きさが8192バイト以上の場合に正しくチェックできない。 原因は、FileAssertのL232で無限ループになっていると見せかけて、 L258でr…

他のプラグインフォルダのURLの取得

ずーっと前にやったのに忘れてたので、メモ。 自作プラグインだったら、Plugin#getBundle().getEntry("/")で取得できる。 他のプラグインの場合は、こんな感じ。 Bundle bundle = Platform.getBundle("[プラグインID]");

JFCUnit

Swingの試験ができる、JUnitを拡張したツール・・・らしい。 使ったことないのでよくわからん。

WindowsのTelnetサーバにログインできない

Win

そういやXP(Proだけ?)ってTelnetサーバのサービスが入ってるんだよなーと思って 久しぶりに試してみたら、見事にログインに失敗した。 Access Denied: Specified user is not a member of TelnetClients group. Server administrator must add this user to…

拡張ポイントorg.eclipse.jdt.junit.testRunListeners

その名の通り、JUnitの実行に関するリスナーを登録できる拡張ポイント。 JUnit Reporterとか作ってるのに、存在すらしらなかった(汗 この拡張ポイントを使って、org.eclipse.jdt.junit.ITestRunListenerを実装した クラスを指定すると、テストが始まったと…

Javaソースを追いかけながらのデバッグ

Ant

ずーっと前に書いて放置した、Eclipse上でJavaのソースを追いかけながら Antをデバッグする方法。 というかマニュアルをベースに実行してるだけ。 ant.jarとant-launcher.jarをパスに通す。 antのソースをjarファイルに関連付ける。 てきとーにブレークポイ…

copyタスクとmoveタスクのoutputencoding

Ant

copyしているのとmoveしている以外は、一見同じに見えるコード。 <copy file="source.txt" tofile="dist.txt" encoding="${file.encoding}" outputencoding="UTF-8" /><move file="source.txt" tofile="dist.txt" encoding="${file.encoding}" outputencoding="UTF-8" />copyの方はファイルのエンコーディングは変わるけど、 moveの方は変わらない。この場合、moveはファイルをリネームするだけ。 すげーまぎらわしい…</move></copy>

寝ぼけて書いてたっぽいコード

どうも眠りながらコードを書いていたようで。 new Thread(new Runnable() { public void run() { // いろんな処理 } }).run();いや、非同期になってないから・・・。

いまさらながら知ったこと

Alt+Shift+J Javadocを追加してくれる。 今まで、"/**"+Enterとやってちまちま追加してた。 フィールドを追加したあとにコード補完でアクセッサ追加 getter、setterをコード補完から追加できる。 いちいちダイアログからやらなくてもいい。 コード補完でオー…

アノテーションの任意の属性

アノテーションで、任意に指定できる(指定しなくてもいい)ような属性を定義したい場合、 単にデフォルト値を指定すればいいみたい。 @Target(value={ElementType.FIELD}) @Retention(value=RetentionPolicy.RUNTIME) public @interface Hoge { String name…

EMMAのプラグイン版

カバレッジを計測できるツールにEMMAというのがあるけど、 これのEclipseプラグイン版があったらしい。 EclEmma Viewがすごーく見やすいと(個人的には)思う。 今まではよくdjUnitを使ってたけど乗り換えよーかなぁ。 ただ、ブランチカバレッジが出ないのが…

変わったEclipseプラグイン

前に紹介したEclipse Icon Patherというツールのプロジェクトに、 変わったプラグインがあったので、少し試してみる。 FIGlet 文字をfiglet?に変換するプラグイン。 たとえば、"ykhr-kokko"はこんな風になる(円マークはバックスラッシュに脳内変換)。 _ _…