Wednesday Nov 25, 2009

NetBeans 6.8 の Beta の時には JavaFX コードの「整形」はできませんでしたが、現在の開発ビルドやこれからリリースされるリリース候補版では有効になっています。

netbeans javafx plugin

「整形」機能がなくてがっかりしていた方、是非使ってみてくださいね。開発ビルドで試す場合は22日より前のビルドで確認してください。6.8 のリリース用クローンはすでに別に用意され、trunk はすでに次の開発に移っています。

JavaFX プロジェクトのアイコンもかっこよくなりました ^o^

netbeans javafx plugin

何か気付いたらNetBeans 6.8 ユーザーテストに送ってくださいね。

Tuesday Nov 24, 2009

nekobeanNetBeans 6.8 はスケジュールからするともうすぐリリース候補版ですね。先週末に trunk から 6.8 リリース用クローンが用意され安定化の作業に移っています。日本語翻訳の作業は最初のリリース候補版では 99% 完了している見込みです。

NetBeans 6.8 のユーザープログラムも引き続き行なっています。問題点はもちろん動作レポートなどでもかまいません。ぜひ参加してください。

Friday Oct 30, 2009

今日、明日の二日間、オープンソースカンファレンス 2009 Tokyo/Fall が開催されます。以前にもお知らせしたように今回は初めて NetBeans としてブースを出すことになりました。ノベルティなども用意してお待ちしています。是非お立ち寄りください。

オープンソースカンファレンス 2009 Tokyo/Fall
  • 日程:2009年10月30日(金)・31日(土) 10:00-17:00
  • 会場:日本工学院専門学校 蒲田キャンパス 12号館 (JR蒲田駅・西口より徒歩3分) [アクセスマップ]

Monday Oct 26, 2009

プロジェクト jdk-api-ja からのお知らせです。JDK 6 u10 ベースになった API ドキュメントの最新版が公開されました。オンラインのものも zip  アーカイブのものも最新になりました。
オンラインの API ドキュメントは以下から参照できます。
また zip ファイルはダウンロードページの「Java SE 6 ドキュメント」からダウンロードできます。最新版をぜひダウンロードしてくださいね。


NetBeans で使う場合にはこの zip ファイルを「ツール」>「Java プラットフォーム」で起動する「Java プラットフォームマネージャー」で Javadoc に指定してください。

コード補完などで使えるようになります。



「ヘルプ」>「Javadoc 索引検索」でも使えるようになります。



このプロジェクトやメーリングリストの登録方法などは以下に1度書いています。ドキュメント関係のおかしな点を見つけたら是非ここにお知らせしてください。

Thursday Oct 22, 2009

VisualVM 1.2 がリリースされました。また同時に日本語版と中国語版もリリースされています。
VisualVM
zip ファイルは英語のものと別になっているで注意してくださいね。ダウンロードページの Multi-language のリンクを選んでください。 以下リリースノートからの新機能を簡単に翻訳してみました。(アップデートセンターに置かれているプラグインは日本語になっていません)
  • CPU と メモリのサンプリングプラグイン (VisualVM-Sampler がアップデートセンターから利用可能)
  • ひとつのローカル/リモートホスト上で複数の jstatd 接続をサポート
  • 動的ツールチップ、プラグイン用の公開チャート APIを備えた新しいチャート
  • モニタとスレッドタブをアプリケーションスナップショットに保存
  • アプリケーションスナップショットは読み込みアクション、または --openfile で読み込み可能
  • アプリケーション、ホスト、スナップショットのプロパティー UI、プラグイン用の公開プロパティー API
  • オプションダイアログでのプロキシ設定
  • オプションダイアログで SSL 証明書の設定 UI (VisualVM-Security がアップデートセンターで利用可能)
  • プラグインによる JMX 環境/接続をカスタマイズする JMX API の拡張
  • モニタするアプリケーションによる表示名の設定: visualvm.display.name プロパティー
  • リモート X セッションのパフォーマンス改善
  • Windows 上での無効な jvmstat の自動検出
  • UI の向上 : メインメニュー、ツールバー、コンテキストメニュー、カラー、ダイアログ、プロファイラスナップショット、ヒープウォーカ
  • NetBeans Platform と Profiler 6.7.1 で構築:
    • プロファイラスナップショットを HTML, XML, CSV 形式でエクスポート
    • ヒープウォーカ: 維持されているサイズの計算
    • ヒープウォーカ: OQL スクリプトサポート (OQL 構文サポートはアップデートセンターで利用可能)
    • ヒープウォーカ: ヒープダンプでスレッドスタックトレース
    • Mac OS X での外観の向上

VisualVM

Wednesday Oct 07, 2009

少し前になりますが札幌 Java コミュ渡辺さんが JavaFX のスニペットを集めたプロジェクトを kenai に作っています。
Japan JavaFX User Group でのアナウンスはこちら。
NetBeans 6.8 の開発ビルドを使ってこの Kenai のプロジェクトを開いてみます。 Kenai のサポートも 6.7 からはいろいろと進化しています。プロジェクトの検索結果の画面ですが、6.8 と 6.7 では違いますね。上が 6.8, 下が 6.7 です。6.7 ではずぶんシンプルだったんですね。
NetBeans Kenai Support
NetBeans Kenai Support
Kenai ダッシュボード(左側)にプロジェクトが表示されています。右側にはプロジェクトの詳細が表示されます。こちらも 6.8 から追加された画面です。

NetBeans Kenai Support
ソースコードをリポジトリから取得するにはソースコードを「取得」を選択します。
NetBeans Kenai Support
関連するエントリ:

Friday Oct 02, 2009

NetBeans 6.8 開発ビルドを使えば簡単に試せる GlassFish v3 ですが、v3 自体を知っておくといざというときに役立ちますね。ogino さんのブログには「最新 GlassFish v3 を試そう」シリーズが載ってます。
ほ〜多言語ビルドも出来たんですね〜さっそくインストールしてみました。
GlassFish v3 console
NetBeans にも unzip したフォルダを指定することで簡単に登録できます。

Wednesday Sep 30, 2009

NetBeans 6.8 の新機能の目玉はやはやり Java EE 6 対応でしょうか。NetBeans 6.8 の開発ビルドでは GlassFish v3 の開発ビルドをインストーラにバンドルしているので、インストール後すぐに試してみることができます。インストーラで GlassFish v3 の開発ビルドをインストールしなかった場合や zip 形式の配布物を使っている場合には「ツール」>「サーバー」で GlassFish v3 を追加登録できます。

GlassFish v3 の追加
プロジェクトの作成の途中で気付いた時でもウィザードから「追加」を選んで追加できます。
NetBeans
GlassFish v3 を選んでください。
NetBeans
別途 GlassFish v3 の開発ビルドをインストールしてあればそのインストールディレクトリを指定してください。

NetBeans から GlassFish v3 のダウンロード&インストール
もしローカルにインストールしてない場合は、このダイアログから開発ビルドをインストールできます。これは便利ですね〜。
NetBeans
インストールできたら起動してみましょう。サービスウィンドウのサーバーノード以下の GlassFish v3 を起動してみます。

GlassFish v3 は JDK 6 が必要
ところが起動できませんでした。あ、JDK 6 を使う必要があったのですね。(このダイアログの日本語訳はおかしいですね、「関連づけしてください」ですね。修正しておきます。スイマセン...)
NetBeans
実際にコマンドラインで asadmin を実行しても同じですね。
% java -version
java version "1.5.0_20"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_20-b02-315)
Java HotSpot(TM) Client VM (build 1.5.0_20-141, mixed mode, sharing)
% GlassFish_v3/bin/asadmin 
GlassFish requires Java SE version 6.  Your JDK is version 5
%

ダイアログにあるように登録した GlassFish v3 のプロパティーを変更してみます。Java タブで「Java 実行可能ファイル」に JDK 6 の java を指定します。Mac OS X の場合は
  • /System/Library/Frameworks/JavaVM.framework/Versions/1.6.0/Home/bin/java
でしょうか。
NetBeans
システムのデフォルトを JDK 6 にしましょう
サーバーを起動してみます。今度はサーバーが起動しましたが....コンソールが文字化けしてしまっていますね。

netbeans

これは以前にもお知らせしたように NetBeans で使っている JDK と GlassFish で使っている JDK のバージョンが違うからですね。NetBeans も JDK 6 を使って実行しましょう。NetBeans はシステムで設定されている Java を使いますので、Mac OS X では Java Preference で設定を変更するのがよいでしょうね。
NetBeans
このように Mac OS X では NetBeans やそこから呼び出される GlassFish などの JDK のバージョンに注意する必要がありますね。これらに関してはエントリを参照してください。

Monday Sep 28, 2009

Java アプリケーションのローカライズにはほとんどの場合 .properties ファイルを使うと思います。NetBeans も同様でほとんどが .properties ファイルで、残り数個 XML ファイルを使います。コミュニティーによる翻訳も盛んでいろいろな言語に訳されているのですが、けっこうな頻度でその翻訳が原因で NetBeans が動かなくなってしまうことがあります。そのほとんどの原因は MessageFormat で使われるメッセージで形式が間違っていることによるものです。NetBeans に限らず起こりえる問題なのでメモしておきます。 MessageFormat は引数を取るメッセージのローカライズよく使われますね。実際の NetBeans のメッセージを例に挙げてみます。
ERR_no_dep=Module {0} in {1} depends on an unknown module named {2}.
このようなメッセージがあったときに {} に引数が挿入されますが、{} の位置はそれぞれの言語に合わせて順番を変えることができます。日本語なら...こんな感じになるでしょうか。日本語では通常 {0} と {1} を入れ替えた言い方をしますよね。
ERR_no_dep=「{1}」のモジュール「{0}」は不明なモジュール名「{2}」に依存しています。
この翻訳では {} に気をつけないと例外が出てしまいます。例えば 1 と } の間にスペースを入れてみましょう。IllegalArgumentException が発生します。(実際は .properties で定義されていますがわかりやすいように書いています)

NetBeans

あるいは {1} の } を ) にしてみます。同じように例外が発生します。

NetBeans

日本語や中国語などの場合には {} に全角の{}や、, が全角の読点、になってしまうケースもあります。翻訳の段階でこのようなことは起きる事もしばしばあるので気をつけないといけません。

もう一つよく見かけるのは ChoiceFormat の choice や、number などのキーワードを翻訳してしまっているケースですね。
MSG_PassedTestsInfo={0} {0,choice,0#tests|1#test|1<tests} passed
引数に3を与えて実行してみます。tests がちゃんと使われています。

NetBeans

ここでは test, tests, passed を翻訳する必要がありますが、choice まで翻訳してしまうと同じように例外が発生します。以下は日本語で「選択」としてしまった場合です。

NetBeans

NetBeans ではこれらのエラーは翻訳後にチェックするようにしています。何度かここでも紹介したことがありますね。

Friday Sep 25, 2009

きしださんの「創る Java」の改訂第3版が出ています。NetBeans をやるならこの1冊、Java をやるならこの1冊ですね ^o^

創るJava
出版社: 毎日コミュニケーションズ; 改訂第3版版 (2009/9/12)
ISBN-10: 4839932530
ISBN-13: 978-4839932534
もしこんな赤いアイコンが NetBeans の右下で点滅していたら例外レポーターを使って問題をぜひ報告してくださいね。英語は細かいことを気にしなくてもだいじょうぶです。たぶん... ^^; 特にこれから NetBeans 6.8 の Beta 以降のビルドを試す場合はおそらくこういった例外が発生することがあるでしょう。遠慮なく報告してくださいね。

NetBeans Exception Reporter

アイコンをクリックすると例外が発生したことがわかります。「問題の確認と報告」をクリックしてください。

NetBeans Exception Reporter

再現方法をわかりやすく箇条書きにしてしてくださいね。

NetBeans Exception Reporter

すでに報告してあるかどうかわかります。バグIDもわかるので便利ですね。新規の場合、またすでに報告されて直っている場合でも、それ以降のビルドで再現した場合は新しくバグレポートを作成してくれます。

NetBeans Exception Reporter

Monday Sep 07, 2009

すべてのコードテンプレートのリストを API を使って取得してみます。このようになるでしょうか...

MimeLookup で Java ソースコードに対する Lookup を取得します。そこから CodeTemplateSettings を取得、getCodeTemplateDescriptions() ですべての CodeTemplateDescription を取得します。
Lookup l = MimeLookup.getLookup(MimePath.parse("text/x-java"));
CodeTemplateSettings cds = l.lookup(CodeTemplateSettings.class);
List codeTemplates = cds.getCodeTemplateDescriptions();
for (Iterator it = codeTemplates.iterator(); it.hasNext();) {
    CodeTemplateDescription desc = (CodeTemplateDescription) it.next();
    System.out.println(desc.getAbbreviation() + "=>" +
        desc.getParametrizedText());
}
MimeLookup は「MIME ルックアップ API」、 CodeTemplateSettingsCodeTemplateDescription は「エディタ設定」モジュールで提供されています。

もう一つの方法は Document から CodeTemplateManager を取得し、getCodeTemplates() を使って全部取得する方法もあるようです。こちらは CodeTemplate が取得できます。
CodeTemplateManager mgr = CodeTemplateManager.get(textComp.getDocument());
Collection<? extends CodeTemplate> list = mgr.getCodeTemplates();

for (CodeTemplate codeTemplate : list) {
    System.out.println(codeTemplate.getAbbreviation() + "=>" +
        codeTemplate.getParametrizedText());
}
関連するエントリ:
コードテンプレートをプラグインモジュールから使う方法です。CodeTemplateManager を取得し、createTemporary() でテンプレートを作成します。最後に insert() でエディタに挿入します。
JTextComponent textComp;

String tempCodeTemplateText = "StringTokenizer ${st} = new StringTokenizer(${str}, ${delim});";

CodeTemplateManager mgr = CodeTemplateManager.get(textComp.getDocument());
CodeTemplate ct = mgr.createTemporary(tempCodeTemplateText);

ct.insert(textComp);
参考:
関連するエントリ:

Wednesday Aug 26, 2009

NetBeans プラグインのパレットに関するチュートリアルです。
日本語訳のもあるのですがちょっと古いですね、こちらはアップデートされてないので英語のチュートリアルにしたがってみていきます。
英語のチュートリアルにあるサンプルのプラグインをインストールしてサンプルプロジェクトを作ってみます。このサンプルは Java ソースをエディタで編集中にパレットを提供します。今の NetBeans だと HTML や JSP、JavaFX にはパレットは提供されていますが、Java ソースには提供されていません。

NetBeans Java Palette

作成したプロジェクトをながめてみます。

NetBeans Java Palette layer.xml で Java ソースに対してパレットを定義しています。<このレイヤー>/Editors/text/x-java のところですね。

また「JavaPalette」以下には「Items」の下にパレットの項目があるはずなのですが、プロジェクト上で見ると[?]のようなアイコンだけです。これはなぜだかわかりません。チュートリアルのスクリーンショットもそうなっています。

「ライブラリ」以下には「共通パレット」ライブラリが入っているのがわかります。

layer.xml ファイルをダブルクリックするとエディタで XML ファイルを見る事ができるようになっています。実際のソースコードを以下に載せますが、これだけ見ても何をやっているかというのがだいたいわかります。

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE filesystem PUBLIC "-//NetBeans//DTD Filesystem 1.1//EN" "http://www.netbeans.org/dtds/filesystem-1_1.dtd">
<filesystem>

    <folder name="Editors">
        <folder name="text">
            <folder name="x-java">
                <file name="PaletteFactory.instance">
                    <attr name="instanceOf" stringvalue="org.netbeans.spi.palette.PaletteController"/>
                    <attr name="instanceCreate" methodvalue="org.netbeans.modules.javasourcefilepalette.JavaSourceFileLayerPaletteFactory.createPalette"/>
                </file>
            </folder>
        </folder>
    </folder>

    <folder name="JavaPalette">
        <folder name="Items">
            <attr name="SystemFileSystem.localizingBundle" stringvalue="org.netbeans.modules.javasourcefilepalette.Bundle"/>
            <file name="Item.xml" url="items/resources/Item.xml">
                <attr name="SystemFileSystem.localizingBundle" stringvalue="org.netbeans.modules.javasourcefilepalette.Bundle"/>
            </file>
        </folder>
    </folder>

</filesystem>

では実際にこのプロジェクトを実行してみます。Java プロジェクトを作って Java ソースをエディタで編集すると、普段はないパレットが表示されます。

NetBeans Java Palette

main() メソッドを作成するだけの簡単なサンプルですが、これを応用して Java コードでもこういったコードスニペットを提供するパレットがあると便利だと思いませんか? API も使い方をつい忘れてしまうようなものは JavaDoc などでいちいち調べてコードを書いていくつのも大変ですよね。そんな時にパレットから使えると便利じゃないでしょうか。

Friday Aug 07, 2009

WidgetFX のサンプルプロジェクトを作る NetBeans プラグインを作ってみました。nbm は1つです。nbm を適当なところにダウンロードして、NetBeans のツール>プラグイン、ダウンロード済みタブから選んでインストールしてみてください。対応する NetBeans は 6.7.1 のみです。あくまで個人用に作ったものなので自己責任でお願いしますね。

インストール後は、普通にプロジェクトを作成します。WidgetFX アプリケーションは JavaFX カテゴリ以下に置くことにしました。

これを選んでプロジェクトを作ると JavaFX アプリケーションのプロジェクトをベースにし、
  • Widget を元にしたサンプルソース
  • JavaFX SDK の jar を追加
  • 実行方法を Java WebStart に変更
の変更の入ったプロジェクトを作成します。なのでこのまま実行して動くようになっています。

デフォルトは以下のようなアプリケーションを実行します。

今回は簡単に作ったのですがいくつか改善したい点もあります。
  • 依存関係
    プラグインをインストールする時はオンデマンド機能が入っている場合は JavaFX のプロジェクトをあらかじめ作っておいて JavaFX を有効にしておいてください。依存関係からなのか JavaFX がまだ有効になってない場合はエラーになってしまいます。
  • WidgetFX の Javadoc
    ライブラリには WidgetFX の SDK の jar が入っています。これと一緒に Javadoc も入れたかったのですが、NetBeans が認識してくれなかったため入れていません。
  • サンプルのプロジェクト
    今回は zip にまとめたサンプルを展開するだけのプロジェクトになっています。プラグイン側から細かい指定で作成してもいいでしょうね。
このプラグインは非常に簡単なので誰でも作れると思います。参考にしたチュートリアルです。日本語訳もあるのですが最新のものとは同期がとれていないものもあります。

This blog copyright 2009 by katakai