ライトニングJavaというコラムを見た。Jadを使ってJ2SE 5.0とJ2SE 1.4の互換性をどのように確保しているかの話がでてくるような雰囲気。面白そう。
「Java」カテゴリーアーカイブ
Eclipse plugin JavaCC
JavaCCを使おうと思ってEclipseのプラグインを探したところ、JavaCC Eclipse Pluginを発見。
プラグインを展開してEclipseのプラグインへ置いたら、JavaCCを使うプロジェクトの.projectを編集します。
<projectDescription>
<name>sample.JavaCC</name>
<comment></comment>
<projects>
</projects>
<buildSpec>
<buildCommand>
<name>com.subx.eclipse.javacc.Builder</name>
<arguments>
</arguments>
</buildCommand>
<buildCommand>
<name>org.eclipse.jdt.core.javabuilder</name>
<arguments>
</arguments>
</buildCommand>
</buildSpec>
<natures>
<nature>org.eclipse.jdt.core.javanature</nature>
</natures>
</projectDescription>
シンプルなJavaCCの文法にのみ対応しているため、JJTreeなどの文法は使用できない点には注意が必要。
エディタプラグインはEditorPluginから入手できる。ただし、Eclipse 2.x には、black-sun-0.5.0が対応し、Eclipse 3.xにはblack-sun-0.6.0が対応しているので、使っているEclipseに応じてダウンロードが必要。SourceForgeからだと0.5へのリンクがなくてダウンロードできないような感じだったが、Googleのキャッシュで昔のページがでてくればなんとかファイル自体はある模様。今回は(http://prdownloads.sourceforge.net/black-sun/black-sun-bin-0.5.0.tgz?download)をダウンロードした。どうやらorg.eclipse.draw2dも必要なので、そちらもダウンロードしてインストール。
インストールするとパッケージ・エクスプローラで CTRL+C キーでのコピー操作が実行できなくなるらしいので、pluginsにコピーした sf.blacksun.eclipse.jdt_0.5.0 ディレクトリ内の「plugin.xml」を修正。2.1を使っていれば「|| CTRL+C CTRL+R」はいらないので、ALT+SHIFT+%だけにしてしまう。Emacsのキーバインドの方はそのままでもよさそうである。心配なら「CTRL+E」など未使用キーへ変更すると回避できる模様。
serialver
Eclipse3.1を試用していたところ、SerializableなクラスにおいてserialVersionUIDが指定されていないという警告が表示されました。
Java2SDK に付属している serialverツールを使用してserialVersionUIDの値を生成することができます。Eclipse 3.1には、標準でついているようで、クラス名のところで Ctr+1 をするとメニューが表示されるので、これで生成することができます。
自分で管理していくなら一つずつあげていけば良さそうです。コンパイラが生成する機能をつかうとハッシュ値とかを計算して出してくれるようです。
こんな感じでフィールド宣言すれば良いようで。
BlueJ vs Visual Studio
BlueJのサイトにVisual Studio にBlueJとそっくりな機能が搭載されるという記事が載っていました。
Ref: Microsoft goes BlueJ
クラスやオブジェクトを視覚化するという機能は確かに面白いのですが、あくまで教育目的であるという気もします。わかってくるとElipseとかクラスブラウザやオブジェクトブラウザの方が使いやすいと感じるような気がしていますが、またBlueJとかも機能を確認してみようっと。
Enum
ちょうどEnumの話がSSS(G)の勉強会ででたので、良さそうな記事を紹介。[読むのはこれからだけど… (^^;]
Softwares check list
- BlueJ 2.0.5
- FindBugs 0.8.8
- Cobertura 1.3:Cobertura is a free Java tool that calculates the percentage of code accessed by tests.
article:Measure test coverage with Cobertura - WidgetServer
WidgetServer (WiSer) is a Java/XML server-side GUI-framework which enables an application to run as either- a monolithic application with a Swing GUI
- a client/server application with a thin Swing client
- or as an application with a rich Web client based on HTML and JavaScript
- Jetif 1.4.3 :The Jetif is designed for the purpose that to provides a powerful and flexiable testing framework with many of features which developers desired.
- teamwork 2.2.0:Teamwork is an integrated, web based work management solution built purely in java on the hibernate persistence layer. It integrates project, time and worklog management in an ergonomic interface. I’ts cross platform, browser and multi db.
- NetBeans IDE 4.1
- Lint4j 0.8.1
veloeclipse
Velocityを使った開発をするのに便利なEclipse 3.x のプラグインとして、http://propsorter.sourceforge.net/veloeclipse/ があるそうです。Update Managerを使うと簡単にインストールができます。
- http://propsorter.sourceforge.net/veloeclipse/ をフィーチャーの更新のサイトブックマークに加える
- 欲しいバージョンを選んでインストールをクリック
Eclipse 2.x 用には http://veloedit.sourceforge.net/ があるようです。
- http://veloedit.sourceforge.net/updates/ をフィーチャーの更新のサイトブックマークに加える
- バージョンを選んでインストールをクリック