Project Kenai (kenai.com) にプロジェクトをホスティングされている方(プロジェクトオーナ)宛に、移行のメールが届いているかと思います
60日後(2010/4/2)にはサービスが終了するため、残っているプロジェクトは削除されるそうです
代替のサービス案については、コチラのフォーラムを参考にされてはと思います
移行方法(案)もメールにありますが、 Issue Tracker やフォーラムの内容に関しては自力で移行するしかないようです
とても良いサービスだけに、終了することはとても残念です
自分も2プロジェクト置いてありますので、どこか代替のサービスを探して、移行したいと思います
(Mercurial が使用可能で、良いサービスがあれば、ご教示頂ければと思います)
[2010/02/08 追記]
2/6 (日本時間)に、 Project Kenai のサービスが java.net との統合に向けて調整中であるとのメールがありました
今月末には詳細が明らかになるとのことですので、詳しい内容がわかりましたら、ここでも紹介できたらと思います
今日、ネットサーフィン(死語)してて、面白そうな記事を見つけたのでさっそく試してみました。
ネタもとは英語だったので詳しく理解することはできなかった。
コードの切れ端と読めない英語をながめてみました。
私はこれを見てすぐに自信を持って答えることはできませんでした(><)
まぁ・・・永遠の初心者ですからしかたないです。
けど気になるので下記のようなシンプルなコードを書いて実行してみました。
24行目からの if 文の処理結果はよく知られた結果となることは間違いないでしょう。
29行目からの if 文の処理結果が気になります。
実行結果だけ確認するのもあれなので、NetBeans を使ってるのだからウォッチポイントを設定してデバッグ実行してみました。
変数 a,b,c,d をウォッチポイントとして違いを確認してみました。
変数 c,d は一段階深い所に Object 型の配列の中に Object 型配列の変数が格納され一段階深くなってます。
素人考えでは一段階深くなったところで同じじゃないの?って思ってしまいます。
そこで29行目にブレークポイントを仕掛けてステップ実行させてみました。
下のコードの2392行目で引っかかるようですね。
念のために実行結果はこうなります。
たぶん Java プログラマなら知ってて当然ってことでしょうがこんなこと考えたことがなかったので新鮮でした。
NetBeans の優秀なデバッガをこんなことに使う私って・・・幸せ者だ(^^;
仕事でクライアントに「ツール作ってください」と頼まれると、ほとんどの場合JavaとSwingで作ります。最近はコマンドラインツールやゲームは今まで通り、てきとーな使い捨てのGUIのツールはSwing Frameworkで、大きなツールはNetBeans Platformで作ります。Manifestをきちんと書いておくとWindowsやMacではダブルクリックで動くので、jarファイルが実行ファイルのように振る舞います。便利。
同様に「Windows専用のツールを作ってください」と頼まれると、ちょっとごねてから(Windows専用じゃなくちゃまずい理由とかを聞いてから。レジストリとか使おうとするとJavaじゃまずいので)、WPFで作ります。WPFがAvalonと呼ばれていた頃から使っているので、だいぶいろんなところが慣れました。WM_PAINTがないのは、WPF的には当然なのですが、親コンポーネントの外にもレンダリングされるのは最初は面食らいましたっけ。
RIAを作るときには、次の順番で打診します。
- Java Applet(ただし、ムービーだのMP3だのを使うときは使えない。Java Media Frameworkを入れてるコンシューマってほとんどいないから)
- Adobe Flex
- Silverlight
SilverlightがなにげにMacOSXにも対応してるのが便利です。
FlashもバイトコードインタープリタがかなりアグレッシブにJITかけるので、特定の動作(具体的にはメソッド呼び出しとプロパティのセットとゲット。動的言語なのでメソッド呼び出しチェーンをたどるのが重いらしい)をうまく回避すれば速度的には十分。Flexのボタンなどのヴィジェットはきれいだし。
で。
Silverlightは元はWPF/Eと呼ばれていて、WPFの機能を限定してブラウザ上で動くようにしたものだったのですが、次のバージョンのSilverlight4では「オフブラウザアプリケーション」として、AdobeのAIRみたいに単体アプリとしても動くようになるとか。
なんだそれ(^^;)。
素直に本物のWPFとClickOnceでも使った方がパフォーマンス的にも(バイトコードを実行するIL実行エンジンが.net Compact Frameworkベースなので、JITがちょっと効率悪い)、できることの多さ的にも(所詮SilverlightはWPFのサブセット)ずっといいのに。
この辺も、MSの.net Frameworkに対する本気度が疑われる今日この頃です。
ちなみに、XNAも.net Compact FrameworkベースのIL実行エンジンを使っているので、なんというか、微妙なスピードで動きます。WindowsMobileの.net Compact FrameworkはWindowsMobile6.5でも最新版をプリインストールにしなかったくせにあちこちで使い回されてますね。
っていうかー、WindowsMobile7では.net Compact Frameworkはきちんと3.5以上を載せてくるんだろうな? Silverlight動くって話なんだから、たぶん載ってるとは思うけど。
NetBeans にて Ivy の利用をサポートしてくれるプラグイン、 IvyBeans の紹介です
複雑な依存関係をもつフレームワーク等を使うとき、 Maven を利用するとその煩わしさに悩まされることは少なくなります
NetBeans では 6.7 以降 Maven を標準でサポートしており、特に違和感なく Maven の強力な機能を活用できるかと思います
しかし、依存関係の解決だけで十分だったり、 ビルドツールとしては Ant を使いたい場合などは Ivy を使うことで対応できます
NetBeans では Ivy サポートプラグインである IvyBeans を使用することで、上記の Maven サポートに劣らず、Ivy の便利な機能がそのまま 利用可能になります
今回の紹介では Ivy そのものの使い方に関して詳しくは解説しておりませんので、必要な方は公式サイトをはじめ、その他のサイトを併せて参照ください
また、公式プラグインではありませんので、ご利用は自己責任にてお願い致します
まず、インストールですが、 IvyBeans のプロジェクトサイトより最新ファイル(2010/02/04 時点では ivybeans-1.1.zip )をダウンロードし、任意の場所に解凍します
次に NetBeans を起動し、上部メニューから「ツール > プラグイン」と選択、クリックします
プラグインウィンドウが表示されるので、「ダウンロード済み」タブを選択し、「プラグインの追加」ボタンをクリックします
先程解凍してできたファイルをすべて指定します
プラグインウィンドウに指定したファイルが追加されますので、「インストール」ボタンをクリックし、インストールを行います
以降はウィザードの指示に従ってインストール作業を進めてください
途中、未署名のためのウィンドウが出てきますので、「続行」ボタンをクリックしてください
インストールが完了したら、実際に使用してみます
まず、適当な Java のプロジェクトを作成します
(今回の例では、Java Web アプリケーションを作成しています)
作成したプロジェクトを右クリックし、表示されたメニューをより「プロパティー」をクリックします
プロジェクトプロパティーウィンドウが表示されます
新たに「 Ivy 」の項目が追加されていますので、それをクリックします
Ivy の設定項目画面から「Enable Ivy」チェックボックスをチェックし、「了解」ボタンをクリックします
プロジェクトの再スキャン後、 Ivy 関連のフォルダが追加されます
「 Ivy Libraries」 には Ivy にて管理されているライブラリ群、「 Ivy Files 」には Ivy の設定ファイル(デフォルトでは" ivy.xml ")が管理されています
Ivy にてライブラリ管理をするには、従来通りの設定ファイル(" ivy.xml ")を直接編集して設定する方法と GUI を使用して設定する方法があります
まずは、 GUI を使用した方法について説明します
プロジェクト中より「 Ivy Libraries 」を右クリックし、表示されたメニューより「 Add Library 」をクリックします
Add Library ウィンドウが表示されます
「org」に所属、グループIDを記述することで、以降の項目はそれに属する値が補完されます
入力後、「OK」ボタンをクリックすると、内容は設定ファイル(" ivy.xml ")に反映されます
次に直接設定ファイル(" ivy.xml ")に記述する場合は「 Ivy Files 」を展開し、表示されるファイルをダブルクリックします
エディタウィンドウにファイルが開き、内容を直接編集することができます
設定ファイルエディタでも入力内容は補完してくれます
設定ファイルへの設定完了後は、プロジェクト構築時に依存関係を自動的に解決し、不足しているライブラリをダウンロードしてくれます
また、「 Ivy Libraries 」を右クリックし、表示されたメニューより「 Force Resolve 」をクリックすることで、手動実行も可能です
ライブラリを依存関係より削除、または除外する場合は「 Ivy Libraries 」を展開し、表示されるライブラリを右クリックし、表示されたメニューより「 Remove Library 」をクリックします
依存するライブラリとして追加されたものは削除、依存関係として自動的に追加されたものは除外するよう、設定ファイル( "ivy.xml" )に反映されます
以上が IvyBeans の機能紹介となります
Ivy 使いの方、 NetBeans の標準プロジェクトで依存関係の解決に辟易されている方は一度お試し頂ければと思います
NetBeans のエディタ上に表示される縦の赤い線。マージンを示す線なのですがこれを消したいという質問を何人かの方にもらいました。
調べてみるとオン/オフを設定するオプションは提供されいないようです。改善要求はあがっているらしく、おそらく以下の ID だと思います。
- Bug 131910 - Allow value 0 for right margin to turn the text limit line off
1つはオプションの「フォントと色」>「強調表示」の「テキスト境界線」の色をエディタの背景色と同じにすることだそうです。なるほど。

もう1つは「エディタ」>「整形」の「右マージン」を大きな値にしておくことです。

- 識別子は多国語対応。平気で日本語通ります
- フォームとボタンとコントロールで楽々画面作成
- イベントのハンドリングは直感的。少なくともXCodeのInterface Builderよりは簡単(あれはあれでいろいろできるけど)
- ほとんどコード補完とマウスだけでプログラムが組める。Override先を勝手に検索して「これ?」って聞いてくるのはかわいい。「@Override」をさくさく無視するNetBeansは見習え。
- フォームエディタ上で識別子を変えると勝手にコードの側もリファクタリングされるおせっかい(はじめ、これに気づかずに「メソッドがなくなった」と探し回っちゃった。リファクタリングするのが正しい挙動、VC++みたいに関連が外れちゃうのがまずい)。
- ジェネリックコレクションで何でも列挙。intだってオブジェクト扱い。
- その割に静的型が合ってないとコンパイルすら通してくれない安全さ。もちろん、セーブする前から勝手にコンパイルしてエラーを出すのはIDEの常識
そういや、WPFは今は何で開発するのが正しいんだろ? VisualC#でいいのかな?
(追記)
Expression BlendがMS的な回答らしい。高いね、相変わらず。ベータの頃はプロトタイピングによく使ってたんだけど(本気でコーディングするときにはVisual Studioの方が便利)。
CPUはぶっちゃけ何でもいいと思います。ARM-Corex-A9 MPCoreのマルチコアでも、Intel AtomZシリーズでも、PowerPC G4でも、SuperHでも。電池が持ってそこそこな性能がありさえすれば。
GPUはさすがに限られますね。ATi(AMD)のImageonはどうにも力不足っぽいので、PowerVRに頼るしかないかなぁ。TegraのGPUは電気を食うみたいなのでパス。もちろん、OSは通常の描画であってもハードウェアアクセラレーションを使って描画します。それも非同期に。誰ですか、「画面の色をとってあたり判定」なんてレガシーなこと言ってるのは。化石なアルゴリズムですよ。
ストレージはSSD。64GByteくらいあると便利です。メモリは帯域幅狭めでもいいので1GByteくらいは潤沢に。
タッチパネルのみでも、キーボード+液晶でも、入力機器はどっちでもいいかなー。
で、そのうえで、「Javaによるセルフ開発」ができて初めて革命的なハードウェアになると思うのですよ。JavaにこだわってるのはCPU非依存で、なおかつ実用的なサンドボックスを持つ規格がJava位しか思いつかなかったから。
OpenDoc代替の技術としてOpenDocumentが使えるかと調べてたんですが、あれの組み込みはまさにOLEなのでアーキティクチャの違うマシンをまたぐときつそう。でも、今使える一番まともなフォーマットはODFなので、基本的にアプリ内のデータはほとんどがODFで保管されるという作りになるでしょうね。
で、セルフ開発なのですよ。
かつて、パソコンにソフトが少なく、アーキティクチャがまちまちだった80年代、パソコンでできるのはソフトを作ることぐらいでした。BASICはあの制限環境の中ではよくやってましたが、いかんせん開発効率は低めです。
でも、今ならソースコードデバッグをしても全然困らない時代になりました。コンピュータの中の深い部分(それは、セキュリティによって隠されているのですが)は触れないにしても、自分の作ったプログラムはインスペクションしながらステップ実行できます。初心者にプログラムを教えるのに有効なのは、やっぱりステップ実行とインスペクションなので、それくらいはそろっているIDEが標準装備されてないとね。
ちなみに、MacOSXはその程度のことならすぐできるXCodeがおまけでついてきます。BeOSもコードウォーリアでソースコードデバッグできました。EcripseのCDTはまだちょっと怪しいですが、何とか使えます。
VisualC# ExpressはWindowsのおまけでつけてもいいと思うんですけどねー。PowerShellがあるからネイティブ開発なんかしなくてもいいという発想なのかもしれませんけど。
セルフ開発してなんぼという時代が来れば、80年代チックな意味でも、アラン・ケイ的な意味でもパソコンという発想はまた復権するんじゃないかと思います。
今ならおすすめはJavaとNetBeansIDEです。Eclipseよりもプロジェクトの柔軟性は低いですが、いろんな意味でおすすめ。ステップ実行とインスペクションしやすいし。
JDK 7 で変更のはいる Switch 文を試してみました。
JDK 6 ではエラーとなります。
ターゲット JDK を JDK 7 に変更します。
プロジェクトをビルドします。
なにやらビルドエラーが出てますが NetBeans 6.9 の Dev 版を使っているので気にしない(いいのか!
プロジェクトを実行します。
ちゃんと String 型で Switch 文の制御ができてますね(^^)
素晴らしい!!
いつものCrystal Disk Markで
- C:(SSD/NTFS)
--------------------------------------------------
CrystalDiskMark 2.2 (C) 2007-2008 hiyohiyo
Crystal Dew World : http://crystalmark.info/
--------------------------------------------------
Sequential Read : 71.585 MB/s
Sequential Write : 23.689 MB/s
Random Read 512KB : 65.428 MB/s
Random Write 512KB : 20.672 MB/s
Random Read 4KB : 4.958 MB/s
Random Write 4KB : 0.861 MB/s
Test Size : 100 MB
Date : 2010/02/02 10:21:25
- D:(microSD/NTFS)
--------------------------------------------------
CrystalDiskMark 2.2 (C) 2007-2008 hiyohiyo
Crystal Dew World : http://crystalmark.info/
--------------------------------------------------
Sequential Read : 12.115 MB/s
Sequential Write : 7.045 MB/s
Random Read 512KB : 11.559 MB/s
Random Write 512KB : 2.228 MB/s
Random Read 4KB : 2.842 MB/s
Random Write 4KB : 0.034 MB/s
Test Size : 100 MB
Date : 2010/02/02 10:43:09
Readに関しては軒並みHDDの4倍以上。カタログスペックが85MByte/sなので、かなりいい線いってます。圧倒的ではないか、我が軍は!
ちなみに過去のデータはこんな感じ。
あ、よく考えたらこれVistaの頃のデータだ。大して違いはないだろうけど。
でも、使用している感覚としては4倍も速い気はしません。相変わらずEclispeやNetBeansの起動は重いし、何度か連続起動してるとOpenOffice.orgは一瞬で起動するし(これは、Windows7をHDDで運用していても起こっていた)。カリカリ音がしないのは精神衛生上ちょっとうれしいですけど。電車の中で使うときとか怖かったからなぁ。
ちなみにストラップは見つかりました。よかったよかった。
とりあえず、microSDの方がずっと遅いので、ReadyBoostは入れない方がいいですね。
Scala 2.8.0.Beta1 がリリースされました
Macports にも反映されていますが、今までの 2.7 系が Scala27 、今回の 2.8 系が Scala28 というパッケージ名に変更となっています
インストール後のバージョン情報は下記のようになっています
Scala code runner version 2.8.0.Beta1-prerelease -- Copyright 2002-2010, LAMP/EPFL
NetBeans 6.8 用 Scala プラグインは 2.8 が前提となっていますので、使用しやすくなるかと思います
はまったけど、いちおう解決することが出来たらしいので書いておく。
結論から言うと、maven-surfire-pluginのバージョン2.3から2.5に上げるだけ。
デバッガの接続に失敗した際に表示されるエラーメッセージは次の通り。
Have no FileObject for C:\Program Files\Java\jdk1.6.0_18\jre\lib\sunrsasign.jar
Have no FileObject for C:\Program Files\Java\jdk1.6.0_18\jre\classes
Error occurred during initialization of VM
agent library failed to init: jdwp
ERROR: Cannot load this JVM TI agent twice, check your java command line for duplicate jdwp options.
Java Result: 1
debug-test:
構築成功 (合計時間: 0 秒)
現象的には、Bug 166968 – Debugger throws error on startup in 6.7 RC2と同じだと思われる。
発生を確認した条件はつぎのとおり
- Mavenプロジェクト
- maven-surefire-pluginのバージョンが2.3
- jdaveのサンプルpom.xmlをそのまま使った場合こうなる。
- テストパッケージ以下に存在するJUnitテストクラスのデバッグ(CTRL-SHIFT-F6)が出来ない。
- 未コンパイルの状態ならデバッグは出来る。(clean直後ならデバッグできる。)
- コンパイル済みのクラスファイルが存在する状態だとデバッグできない。
- その他の環境条件は次の通り
- 製品バージョン: NetBeans IDE 6.8 (Build 200912041610)
- Java: 1.6.0_18; Java HotSpot(TM) Client VM 16.0-b13
- システム: x86 上で動作する Windows XP バージョン 5.1; MS932; ja_JP (nb)
で、プロジェクトのpom.xmlにあるmaven-surefire-pluginのバージョンを「2.3」から「2.5」に上げたら解決した。
NetBeansをアンインストールしたりするなど試行錯誤して、対処方法を見つけることが出来たのは本当に偶然だった。
本日、夜中2時に開催された Oracle の今後の製品戦略について、
特にソフトウェア関連の発表資料の画面ダンプを本ブログにて
公開します。
速報として若干補足します。
今日の発表内で、アプリケーションサーバ、統合開発環境について説明がありました。
GlassFish は今後も Java EE 6 の参照実装として継続的に開発/投資を
継続していき、企業環境における製品として WebLogic を押していきます。
また、統合開発環境においては、NetBeans は今後も投資し Java の軽量な
開発環境として開発/投資をしていきます。JDeveloper は Oracle の戦略的な
開発ツールとして今後も利用されます。さらに Oracle は Eclipse への投資も
引き続き行っていきます。
今まで NetBeans について Oracle から発表が無く不安に思われていた方も
いらっしゃるかと思いますが、今日は NetBeans についても明言され今後も
投資されるので利用者の皆様には安心材料を提供できたかと思います。
この度の発表で Oracle/Sun のソフトウェア製品についてはかなりクリアになったかと
思います。
ソフトウェア関連製品の発表資料(PDF)
WebCast
twitter の NetBeans 日本語コミュニティも mixi の NetBeans コミュニティも参加してくださってる方がとうとう 500 を超えました。うれしい!
今見ると twitter はフォロワーが 525、mixi はメンバー数がちょうど 500 です。
twitter の背景画像は金内さんが作ってくれた ねこび〜んの NetBeans 6.8 リリース記念です♪
JDK 6 Update 18 がリリースされています。 NetBeans に関係することで3点ほど。
NetBeans バンドルインストーラ
NetBeans 6.8 (Java SE) とのバンドルインストーラが提供されています。 NetBeans と JDK を一緒にインストールしてしまうという便利なインストーラです。
VisualVM 1.2.1 がバンドルされていますが、今回の Update 18 から日本語と中国語にローカライズされています。VisualVM 単体ではすでにローカライズ版がリリースされていたわけですが、JDK 側にも入ってきました。やったね! VisualVM は NetBeans Platform で作成されています。


Windows で -Dfile.encoding=UTF-8 を付けた時のフォント
NetBeans の日本語メーリングリストで出ていた件で改善要求として 6856390 にあげていたのですが、Update 18 に修正を入れていただきました。Windows で NetBeans ごと UTF-8 を使いたい時、回避策としてこのオプションを付けて使っている方も多いと思います。Update 17 までは中国語のフォントが優先されてしまいましたが、これで日本語のフォントを使うようになりました。
CodeZine の記事で Java で動く軽量フレームワーク Play! が紹介されていた。
なにげに見てたら NetBeans プロジェクトとして取り込むことができるとあった。
Play! がどういったものかは CodeZine の記事をご覧いただくとして、記事をもとに NetBeans で動かしてみた。
まず、コマンドプロンプトで Web アプリケーションを作成します。
次に NetBeans プロジェクトとして取り込めるようにします。
これで NetBeans プロジェクトとして取り込めるはず。 たぶん・・・
では、取り込んでみます。
プロジェクト構成は下図のようになってます。
test パッケージがエラーとなってます。
未使用のインポートがあるようです。
何故かは調べてないので解りませんが無視するか、指示にしたがって未使用のインポートを削除でとりあえずエラーはなくなります。
プロジェクトが実行できるか確認します。
無事にプログラムが実行されました。
ブラウザで確認します。
ついでだから記事のとおりプログラムを変更してみました。
いつもの NetBeans での使い勝手の良さがこれでも一緒ですね。
で、ちょっとだけ触ってみただけなのですが・・・
NetBeans プロジェクトとして取り込んで何が便利なのかな?って考えてみた。
賢いエディタ機能が使える!
これくらいしか思い浮かばない(><)
eclipseたんの登場以来,Eclipseの萌え化が激しく進んでいる昨今,いかがお過ごしでしょうか。
http://d.hatena.ne.jp/yuroyoro/20100120/1263960364
http://d.hatena.ne.jp/warufuzaketaichi/20100120
http://d.hatena.ne.jp/torazuka/20100121/moeclipse
NetBeansはSubstanceというプラグインがかつてあってUIは割と簡単にいじれたんですが,たしか6.0あたりから,substanceが動かなくなった覚えがある。
というわけで,スプラッシュとアバウト画面の画像変更の仕方だよ。
NetBeansディレクトリ下の「nb6.8/core/locale/core_nb.jar」に画像が格納されています。このjarファイル内の「org/netbeans/core/startup/splash_nb.gif」と「org/netbeans/core/startup/about_nb.png」を差し替えると変更できます。(なんでgifとpngなんだろう?)
変更するにはcore_nb.jarを展開してファイルを置き換えてから再度jarを作成...と言いたいところですが,めんどくさいですよね。
これ,同じことがjarコマンド一発でできます。
- まず,どこでもいいので「org/netbeans/core/startup」という階層のフォルダを作って,startupフォルダ下にsplash_nb.gifとabout_nb.pngを起きます。
- コンソール(コマンドプロンプト)でNetBeans/nb6.8/core/locale/ に移動します
- 次のjarコマンドを実行します
jar -uvf core_nb.jar -C ['org/netbeans/core/startup'というフォルダを作ったディレクトリ] org/netbeans/core/startup/splash_nb.gif jar -uvf core_nb.jar -C ['org/netbeans/core/startup'というフォルダを作ったディレクトリ] org/netbeans/core/startup/about_nb.png
jarファイルの内容を直接更新するコマンドです。
以下,おれたちのNetBeans。
くぼさんのリクエストにお応えして
今年も、ねこび〜んカレンダーをご用意しました。
よかったら使ってくださいね!(^^)
ねこび〜んカレンダー2010(PDF/1.9MB)
A4用紙でプリントして、真ん中の点線で切り分けて クリップ等で束ねてご利用できます。
http://d.hatena.ne.jp/yuichi_katahira/20100108/1262918976
Visual Modeのアレはコレだった(なんのこっちゃ?)。
'selection' 'sel' 文字列 (既定では "inclusive") グローバル {Vi にはない} このオプションは、選択時の動作を設定する。これはVisualモードとSelect モードでのみ使用される。 設定可能な値は以下の通り。 値 行末の後 末尾に操作 ~ old X O inclusive O O exclusive O X 「行末の後」というのは、カーソルを行末より1文字後ろに置けることを表す。 「末尾に操作」というのは、選択領域の末尾の文字が操作を受けることを表す。 例えば、選択領域の削除に "x" が使われたときなどに違いが出る。 "exclusive" に設定していると、'virtualedit' が空のときノーマルモードか ら選択を開始し、末尾から後方に選択すると行末の文字を含めることができな くなる。 オプション 'selection' は、コマンド |:behave| によって設定される。
"inclusive"がデフォルトのようだけど,カーソル位置の文字まで選択範囲に含まれるのは好きくないので"exclusive"にしてる。IdeaVIMは .vimrc(または _vimrc)を読み込むので,そこに指定しとけば良い。
NetBeansのjViはオプションダイアログで指定できた覚えが...。EclipseのviPluginも含めて,id:yuichi_katahira が追跡調査をしてくれるに決まっている。:-)
軽くSDLoader調べてみたら、NetBeansのフォルダ構成ってそのままSDLoaderにぶちこめるじゃないですか・・・。
今は保存すると自動でコンパイルやリソース配備もできるので(しかもデフォルト設定はこちら)なおさら都合がいいですね。
つまり適当なmainをテストパッケージでもどこでもいいのでプロジェクトのフルパス設定さえしてあげれば、何も考えることなくWebプロジェクトがSDLoaderで起動する。build/webフォルダを設定してあげるだけ。
TomcatもGlassfishもなしでそのまま動くのでJavaSEプロジェクトが必要かと思いきや、通常のTomcat用とかと同じWebプロジェクトでよいというオチはすばらしい。つまり、Java EE用の各種プラグインが有効なわけですよ。
1回起動してしまえば出力ウインドウで再起動/停止がアイコンクリックするだけで起動/停止できるようになるのと、そのアイコンの使用不可能状態によって起動中なのかどうかがすぐにわかりますのでなおさら便利に。
配備後にJSP変更すると反映されますね。すばらしい。
GlassfishやTomcatのようにサービスのサーバーカテゴリのところにぶら下げる必要はないくさい。NetBeansの出力はいわゆるEclipseのコンソールより切り替えが容易なので問題はないはず。でも多重起動してそのままわすれるってことはありそうかも。そのへんの制御もしてもいいかな。
なにこの便利さ。SDLoader用でサーバー起動するNetBeansプラグイン作るのもいいかもしれないねー。そのまま配布可能なアーカイブも生成できるようにすればなお良いか。
ただ、Struts 1.3.8とSpring MVC 2.5の起動は確認できたけど(NetBeansで標準サポートされているのでフレームワークの選択をするだけ)JSFは1.2、2.0ともに起動できず。
以下は2.0でのエラーですが、1.2でも同じです。1.2はすべて英文で表記されていますが。
致命的: InternalWebApplication initialize fail.
java.lang.RuntimeException: java.lang.IllegalStateException: アプリケーションは起動時に正しく初期化されず、ファクトリが見つかりませんでした: javax.faces.context.FacesContextFactory
at sdloader.javaee.WebAppManager.init(WebAppManager.java:146)
at sdloader.SDLoader.initWebApp(SDLoader.java:596)
at sdloader.SDLoader.start(SDLoader.java:498)
at SDLoaderStart.main(SDLoaderStart.java:17)
Caused by: java.lang.IllegalStateException: アプリケーションは起動時に正しく初期化されず、ファクトリが見つかりませんでした: javax.faces.context.FacesContextFactory
at javax.faces.FactoryFinder$FactoryManager.getFactory(FactoryFinder.java:804)
at javax.faces.FactoryFinder.getFactory(FactoryFinder.java:306)
at javax.faces.webapp.FacesServlet.init(FacesServlet.java:166)
at sdloader.javaee.InternalWebApplication.initServlet(InternalWebApplication.java:209)
とりあえずそんなところ。
あと確認したところではJAX-RS(Java RESTful Webサービスの標準API)は動いているくさい。
SDLoaderを使う場合ってのはスタンドアロンで軽く動かすのが目的だろうから、フロントエンドをGWTやFlashにしてJAX-RSでJSONのデータをやり取りするだけってのがシンプルでよいかもしれない。フロントエンドってのは時代によって変わるものと考えるとね。
もっともJAX-RSのRIはスタンドアロンサーバーも持っていてクラスパスにあるリソースがそのまますぐに公開できるんでどうかという気もしないわけではないが。
public static void main(String[] args) throws Exception{ HttpServer server = HttpServerFactory.create("http://localhost:8888/"); server.start(); }
本当にこれだけで動く。sunはやれば出来る子。
普段は、SQLクライアントにNetBeansを使っているのだけど、会社のPCでFlexBuilderと同時に起動すると重すぎるので、何かいいのは無いかと探していて見つけた。
コード補間は使えるし、レスポンスもかなりいい。何より、JDBCを使っているのでDBごとにクライアントを変える必要がないのがいい。
2001年から開発しているらしいけど、何で有名じゃないのか不思議なくらいだ。
---
ちなみに初回起動時のL&Fは、Metalになっててダサイけど、[File]-[Global Preferences]の[L&F]にたくさんL&Fが用意されているから大丈夫。個人的にはNimRODが好き。
消したもの
- MACAFEE(重いイメージが・・・)
- MS IME(ATOK使うので)
入れたもの
- MS Security Essential(軽いと思う)
- ATOK 月額版
- Chrome(IEより快適。IEは、内村さまぁ〜ず専用)
- Open Office(5年ぶりくらいに使ったけど、凄く良くなっててビックリ。軽快に使えると思う)
- JDK6
- NetBeans6.8(開発するかな?常用するには厳しいかも。)
SanDiskのSSD64GBってのが、ちょっと心配だったけど、特に遅いということもなく不満なく使えている。
ちなみに3Dの性能も見ようと古めのゲームPSO BBを入れてみたけど、起動時にフリーズしてプレイできなかった。一応Windows7対応の筈なんだけどなぁ。
ソースは新しいクラスを作ってそこにメソッドを追加して
同じような内容のソースを作った。
動いたが、
for(line <- Source.fromFile(f).g
この辺までキー入力すると動かなくなる。だいぶ待って
いるとキー入力が可能になった。1文字ずつゆっくり
入れるとちゃんと反応する。違うマシン、違うOSでも
試してみようと思う。
なぜかわからないのですが、NetBeansは同じ名前のプロパティファイルがプロジェクトに追加したJarアーカイブの中とソースツリーの中にあると、ソースツリーの方を使っしまうようです。ソースツリーはプロジェクトに追加したというわけではなく、jarアーカイブ経由で参照されているもの(のはず)。JRuby 1.5.0からは、jruby.propertiesファイルはant buildで自動生成されるようになったので、同じ名前でもソースツリーの方はテンプレート、ビルドしたjarアーカイブの中に入っているのはち ...
11月にNetBeans IDE 6.7.1をインストールしたばかりですが、6.8が登場しましたので、こちら
を入れてみました。
1.ダウンロード
(1)http://ja.netbeans.org/を起動して、Download FREE NetBeans IDE 6.8ボタンをクリックする。
(2)必要なインストーラを選択する。今回はRubyを選択する(すべてでも構わない)
(3)適当な場所にnetbeans-6.8-ml-ruby-windows.exeをダウンロードする
2.インストール
(1)インストーラを起動する
(2)スタート画面で、[次へ]ボタンをクリックする
(3)内容をしっかり確認し同意したなら、[次へ]ボタンをクリックする
(4)インストール先に変更がなければ、[次へ]ボタンをクリックする
(5)[インストール]ボタンをクリックする
(6)インストール中の画面が表示される
(7)セットアップ完了画面が出るので、[完了]ボタンをクリックする
3.動作確認
インストールが終了したので動作確認ということでプロジェクトを実行しようとすると
「Webサーバに接続できませんでした - http://localhost:3000/を表示できません」
というエラーメッセージがでて、Webrickが起動しない。
いままで、こんなことはなかったのにバージョンの違いによる問題なのか。
6.7.1と比較してみるとサービスのサーバーにWEBrickがない。
サーバーの追加を試みるがうまくいかない。
JRubyが入っているということは、もしやフラットフォームの設定か。
当たりでした。
(1)「ツール」から「Rubyのプラットフォーム(U)」を選択
(2)Rubyプラットフォームマネージャで「プラットフォームを追加(P)」をクリック
(3)C:/Ruby/ruby.exeを選択
(4)WEBrickがサーバーに取り込まれた
この年末年始に C++ でゲームプログラミングを少しやってみました。C++ 言語自体は、青春をかけて(笑)AT&T Release 時代から追いかけているのでほとんど問題なく使えるのですが、本格的にゲームプログラミングに使ったのは MS-DOS 時代以来。Windows でゲームプログラミングをするときはほとんど Delphi を使っていました(DirectXを叩いて遊んでたことはありますが、プレイできるぐらいのゲームにまで至っていない)。そして最近もっとも多く使っているプログラミング言語は Java です。
そんな私が C++ でゲームプログラミングをやってみて思ったことです。
DXライブラリ便利ですね
DXライブラリを試してみたのですが、いや、これ、便利ですねぇ。なんか青春時代「Master lib」使ってゲーム作っていたのを思い出しましたよ。別にDXライブラリとMaster libが似ているというわけじゃなくて、いいライブラリがモチベーションを牽引してくれてるってところに共通点を感じました。
コーディング規約どうすんの?
私がJavaを好む理由のひとつが、標準クラスライブラリをはじめとしてまっとうなサードパーティのほとんどすべてがひとつのコーディング規約(クラスやメソッドの命名規則)に則って作成されているということです。ところが Visual C++ ではそうはいきません。Microsoft提供のものは、だいたいなんでも大文字で始まっているようですが、C/C++ 標準の関数は小文字から始まっています。とても気持ち悪いです。
ドキュメンテーションコメントは?
これが私のモチベーションをもりもりと削ぐ原因となったものです。JavaだったらJavadocがあります。では、C++は? というか、Visual C++ では何を使えばいいのでしょうか? IDE(Visual Studio)とすんなりなじむようなものは私にはよくわかりませんでした。ちなみに私が UNIX/Linux で C++ をやるときは迷わず Doxygen を使います。Windows でも Doxygen を使えるようですが、DXライブラリの関係で日本語をシフトJISにしなければならず、そうすると日本語がDoxygenで化けてしまうのです。C#のようにXMLドキュメントも試してみましたが、うまくいきませんでした(型が.Netのものとして出力された)。
リソースの扱いがめんどくせー
Windowsアプリケーションを作るとなったらリソースうんうんというのは避けては通れない道だとは思うのですが、まず、私は Visual C++ 2008 Express Edition を使っているので標準ではツールが入っていないわけです。その変をどうしようかとか悩ましいし、そもそもメッセージリソースひとつ扱うのがJavaに比べて面倒くさすぎる!
「タダ」でできる幅が狭い
Microsoftがタダで開発環境を提供してくれているのは在りし日からみれば画期的なことですが、それにしてもEclipseやNetBeansがJavaにできる「開発環境」としての機能に比べるとずいぶんと簡素だなと感じざるを得ません。
NetBeans 6.8でもGlassfish V3との連携でログ回りが遅くなる現象が直ってないようだ。
これ6.7だったか6.5だったかで発生してたんだけれども6.8でも異様に実行やデプロイが遅くなる現象あり。
V2やTomcat 6だとさくさく動くのも同じ。
Glassfish V3バンドルしていてコレって…
まぁ検索すればすぐわかるけど、備忘録のために。
Google Web Toolkitプラグイン
GWTのプラグインは以下からとってきて保存する。
メニューの「ツール」-「プラグイン」を選択後表示されるダイアログにて「ダウンロード済み」タブを選択、プラグインの追加ボタンをクリックしてダウンロードしたファイルを選択する。
そしてそれを選択してインストールボタンを押すだけ。
何も設定せずともアップデートセンターにあるけど、2.6.10までしかないので落としてきたほうがいいと思う。
複数のModuleと開発モードの組み合わせで即時反映は問題なく動いています。
Google App Engineプラグイン
GAEのプラグインは以下のURLをプラグインのサイトに追加するとよい。
http://kenai.com/projects/nbappengine/downloads/download/Latest_NetBeans68/updates.xml
こちらはプラグインのダイアログで「設定」タブを選択、「追加」ボタンをクリックする。
そうすると名前とURLを入力するダイアログが出るのでここに上のURLをいれる。
そうすると使用可能なプラグインに自動的に現れるのでそこで選択してインストールするだけ。
NetBeansはだんだんとEclipseの便利機能を標準で搭載するようになってきているのですが、なぜか搭載されないのが、インタフェースのメソッドからその実装メソッドを検索して一気にジャンプする方法です。Eclipseで言えば、Ctrl+Tというやつです。
NetBeans 6.7までは、同様の動作をするプラグインとして、Java GoTo Implementationというプラグインが開発プラグイン集の中にあったのですが、6.8からは消えてしまった。で移行が躊躇われる、というのは十分あると思います。
実は今では次のKenaiで開発が進んでいるようです。update centerのURLが書かれているので、プラグインメニューにURL追加すれば、GoTo Implementationプラグインが利用可能になります。
http://projectkenai.com/projects/pelmel/pages/Home
あと、使い方はまだよく分かってないのですが、
- extended support for closure-like anonymous innerclasses (anonymous innerclasses with one method)
- folding of the anonymous innerclass class into a closure-like format
- code completion shows a closure-like entry when possible, that generates the appropriate anonymous innerclass
なんてのもあるようです。こちらは「Extended Java Editor」プラグインで提供されています。
なにが嬉しいのかよくわからないんですが、型パラメータをフォールド(エディタ上でだけ見えなくする)という機能もあるようで...それってうれしいのか?
フォールドの設定はNetBeansのオプションの「その他」欄に「Java Ext Editor」という項目が追加されるので、そこで変更できます。
あとは「Editor Support for URLs」というのもありますが...これは便利なのかどうなのか不明。
ともかく、GoTo Implementationプラグインが欲しいならKenaiサイトに行けば使えますよ、ということで。
ペパクラ型紙置場さんに ねこび〜んのペーパークラフト型紙が公開されました!
このペーパークラフトの優れているところは表情を入れ替えられることです。
よく考えられてます。
冬休みにコタツに入ってペーパークラフト工作にいそしむのもいいですね。
九州地方にお住まいの方は一度は見た事があるかもしれない
BBIQのCMのサンタさん。
そのサンタさんたちが
子どもたちにビデオメッセージを送ってくれる
というWebサービスを使って
ねこび〜ん宛にメッセージを送ってもらいました。
※「〜」の文字が選択できなかったので
「ねこびぃん」になってますがご愛嬌ってことで。(^^;
プレゼントやご馳走以外にもう一つ
お子さんにサプライズを準備したいパパママは試してみませんか。
Scalaスケーラブルプログラミングを読みながら手を動かして
います。
(netBeansではなく端末入力でエディタとScalaを動かす)
3章のファイルを読み込むところをプログラムしてみたが、
fromFile(???)で???
がタイプミスマッチと出てくるおかしいなあと思いながら
いろいろ試してみるが、うまくいかない!
そこで、Scalaを2.7.7.finalに変えてみたら正常に動きました。
バグなのか仕様変更かは分からないが2.8.0.latestedでは
いまの所、Stringはダメみたいです。
新しいAtomを80社が採用! と聞いて「とうとうMIDの時代が……」と思ったら、NシリーズとDシリーズの話でした。
うーん、ZシリーズはZ550の採用例も聞かないし(Z515Z510はPSIONの残党が使っているみたいですが。結局新世代Zシリーズ採用なしかな?)、IA-32のスマートフォンというのは結局単なる夢なのかなぁ。
Willcom D4もスマートフォンといえばスマートフォンですが、あれは、待ち受け1時間半というどうかという代物だしなー。
ようは、待ち受けている間、CPUファン、HDD、ディスプレイとそのバックライトを全部OFFにして、なおかつC6ステートでずっと動かしていれば電池はあまり食わない……はずなんですよね。Intelの言い分を信じれば。CPUファンやHDDは簡単に止められるとして、ディスプレイとそのバックライトもやりようによっては何とかなるかな。問題は、バックグラウンドプロセスが沢山走っているWindowsでC6ステートで居られる時間がどれくらいあるかということですね。Javaのプログラムを一つ動かすだけでThreadは6個ぐらい立ち上がってしまい、又これが一定期間ごとにSleepのタイムアウトするとなると、C6ステートで居られる時間は余り多くないのかも知れないという感触がします。いや、そういう意味では、WindowsMobileは良くやっている方だと思いますよ。もとから使えるThreadの数がひどく少ないという制限はあるにしても、きちんとOSが動いている状態で待ち受けて、それなりの時間持っていますから。
スイッチオンから3秒で起動、ではなく、単にC6ステートに落ちているのを復帰させるだけならば、ディスプレイが消えている状態からでも復帰はそこそこ速いでしょうし。
とはいえ、Windowsを使っている限りC6ステートに居続けるのは難しいだろうなぁ。Linuxみたいな割合シンプルなカーネルを持つOSならば、ドライバ関連を細工すればプロセスのほとんどをSleepさせておくことはできるかも知れないけど。この辺、「フルスペックWindowsのスマートフォン」なんてのをMS自体が目指しているとは思えないからなぁ。
Windows VistaよりもWindows7の方が裏で動いている様々な機能は少し控えめになったようですが(Vista自体がまずいとは思わないけど)、そのWindows7でも結構沢山のプロセス/スレッドが立ち上がりっぱなしみたいですので、C6ステートを過信するわけにも行かなさそうです。
まぁ、MS的には「WindowsMobile7(WindowsCE7カーネル)」がスマートフォンの本命でしょうし、IA-32にそこまでの省電力は期待してないでしょうね。
とはいえ、フルスペックWindowsが欲しいわけではあんまり無くて、 Florian 的に欲しいのは「Java6がまともに動く小さい機械」なだけなんですけど。NetWalkerはJava6がまともに動く……とは言いがたい状況なのが残念なところ。一応あるんですけどね、ARM-Linuxの評価版。あと、IcedTeaやgcjもあるし。
Javaがまともに動きさえすれば、NetBeansIDEが使えるはずだし、OSは何でもいいんだけど。
AtomZシリーズのもっと省電力なPC出ないかなぁ。
twitterでは当日に呟いていたのですが、このBlogにも。 最初はTシャツだけかなぁと思っていたのですが、なんだかいろいろついてきた。 動作確認と触ったときに感じた違和感をメールしただけなので、「え?!いいの?」って感じだったんですが、もらえるものなのでありがたくもらっておきました。 それよりも、自分が報告したバグが直っているっていうのが嬉しいですね。なんか貢献したよって思えますし。 今度もあったら参加したいですね。どれだけ出来るかわかりませんが。
オープンソースカンファレンス 2009 Tokyo/Fall、無事終了しました。展示ブースに立ち寄ってくださったみなさま、本当にありがとうございました。
今日はとってもうれしいことがありました。ねこび〜んのペーパークラフトを持って来てくださった方がいました。ファイルを後で公開していただけるそうなので楽しみにしていてください。
こんな感じ。

顔は1種類かと思いきや...

なんと! 四角い部分が外れます。

サイコロにはいろんなパターンの顔があります。その時の気分によって、

変えられます!

うれしい!


引き続き NetBeans &ねこび〜んをよろしくお願いいたします。
netBeansにScalaをプラグインしました。
http://wiki.netbeans.org/Scala
を参考にしました。
Scala-2.8.0.latest
をダウンロードして展開してパスを通しました。
nb-scara-68v.1.1.0rc1
をダウンロードして展開してプラグインします。

12/11にNetBeans 6.8 日本語版が正式リリースされました!
ねこび〜んも一緒に喜んでます(^0^)
NetBeans 6.8の情報はこちらからどうぞ♪
12月の初旬にリリースされた NetBeans 6.8 を使って JDK 7 に組み入れられる予定の ForkJoin フレームワークを試してみました。
Fork Jion フレームワークの情報は日本語でも少しありましたのでネット上の情報を元に英語の API ドキュメントをちらちら見ながら適当にプログラムを組んでみました。
素人の私がそういう状況で作ったので間違いがあるかもしれないの見つけられた方は優しく解りやすく間違いを正してくれることを望みます。(^^;
まず、JDK 7 build 77 をインストールして NetBeans 6.8 でそれを使えるようにします。(現在は build 78 が最新です)
Java プラットフォームマネージャーにて JDK 7 を登録します。
メニューバーの [ ツール ] から [ Java プラットフォーム ] をクリックして表示される画面の指示に従って入力していきます。
プラットフォーム名は自分の好みでつけてかまいません。
以上で NetBeans 6.8 でターゲット JDK を JDK 7 build77 にすることが簡単にできます。
新規プロジェクトを作成したらデフォルトがターゲット JDK と異なってる場合はプロジェクトのプロパティで Java プラットフォームを変更できます。
先ほど登録した JDK 7 build 77 が利用可能になってますのでそれを選択します。
また、下のほうに「ソース / バイナリ形式」 に JDK 7 が選択可能となりますのでそれを選択します。
以上のようにして下図のようなプロジェクト構成のサンプルプログラムを作ってみました。
分割統治型アルゴリズムで有名なマージソートです。
ちなみに JDK 6 ではこのマージソートアルゴリズムが使われているらしいです。
この JDK 7 build 77 からは java.util.Arraysクラスの定義されている基本データ型の配列のソートは、Dual Pivot Quicksortを呼び出すように書き換えられています。
参照型の配列の場合には、TimSortですので、Java 7ではソートのアルゴリズムが新しくなります。
と ForkJoin フレームワークの情報を探していたときにみつけました。(余計な情報><
RandomNumber2009.RandomNumber.java
package RandomNumber2009;
import java.util.Random;
public class RandomNumber {
private final int[] number = new int[300000];
public RandomNumber() {
Random generator = new Random(1982);
for (int i = 0; i < number.length; i++) {
number[i] = generator.nextInt(300000);
}
}
public int[] getNumber() {
return number;
}
}
forkjointest.MergeSort.java
package forkjointest;
import java.util.Arrays;
import java.util.concurrent.ForkJoinPool;
import java.util.concurrent.RecursiveAction;
public class MergeSort {
public int[] sort(int[] number) {
int nThreads = Runtime.getRuntime().availableProcessors();
ForkJoinPool pool = new ForkJoinPool(nThreads);
SortImpl sort = new SortImpl(number);
pool.invoke(sort);
return sort.result;
}
private class SortImpl extends RecursiveAction {
private int[] number;
private int[] result;
SortImpl(int[] number) {
this.number = number;
}
@Override
protected void compute() {
if ((number.length < 5)) {
result = Arrays.copyOf(number, number.length);
Arrays.sort(result, 0, result.length);
} else {
int midpoint = number.length / 2;
int[] left = Arrays.copyOfRange(number, 0, midpoint);
int[] right = Arrays.copyOfRange(number, midpoint, number.length);
SortImpl task1 = new SortImpl(left);
SortImpl task2 = new SortImpl(right);
invokeAll(task1, task2);
left = task1.result;
right = task2.result;
merge(left, right, number);
result = number;
}
}
private void merge(int[] left, int[] right, int[] number) {
int i = 0, j = 0;
while (i < left.length || j < right.length) {
if (j >= right.length || (i < left.length && left[i] < right[j])) {
number[i + j] = left[i];
i++;
} else {
number[i + j] = right[j];
j++;
}
}
}
}
}
forkjointest.Main.java
package forkjointest;
import RandomNumber2009.RandomNumber;
import java.util.Arrays;
public class Main {
public static void main(String[] args) {
RandomNumber test = new RandomNumber();
int[] beforeNumber = test.getNumber();
System.out.println("Before");
System.out.println(Arrays.toString(beforeNumber));
MergeSort ms = new MergeSort();
int[] result = ms.sort(beforeNumber);
System.out.println("After");
System.out.println(Arrays.toString(result));
}
}
このプロジェクトを構築し、実行させると無事に動きました。
さて、ここで本当に並列化しているか確認してみます。
プロファイラを接続して ForkJoinPool のワーカースレッドが起動しているか?
プロファイラによると起動されてますね。
実行中から待機状態になり新たに4っつのワーカースレッドがありますね。
ちなみに CPU コア数は 8個なので8つのワーカースレッドが作成されます。
実行が終了し待機状態になってなんで新たにスレッドが4っつ起動されているのかは謎です。(こういう仕様なのか?)
では、生成されるワーカースレッド数を変更してみます。
int nThreads = Runtime.getRuntime().availableProcessors();
nThreads = 1;
ForkJoinPool pool = new ForkJoinPool(nThreads);
このようにワーカースレッド数を1に変更してみました。
次に 2に変更
4の場合
ちゃんと指定した数のワーカースレッドが生成されるようですね。
ついでにプロファイラの CPU でアプリケーションのパフォーマンスを調べてみようとしたところ
見れなかった(><)
ヒープを大きくしても変わらず・・・ なんでだろう?
JDK 7 に標準搭載予定の ForkJoin フレームワークについての情報はネット上にも少し流れていますので興味のあるかたはググってみてくださいね。
大切なことを忘れてました。
ノーマルのマージソートとのパフォーマンスの比較はまだしていませんので気になる方は比較してみてください。(爆
19日に
オープンラボ岡山 勉強会 第5回(午後から参加)
http://openlab.okaya.ma/wiki.cgi?page=%CA%D9%B6%AF%B2%F1%2F%C2%E8005%B2%F3
忘年会議2009
http://openlab.okaya.ma/wiki.cgi?page=%CB%BA%C7%AF%B2%F1%B5%C42009
に参加しました。
オープンラボ岡山
オープンソースのクラウド基盤
eラーニングについていろいろ
scalaで描く力学系の世界〜gumowski-mira写像と
関数プログラミング
忘年会議2009
来年の予定
ライトニングトーク
BINGOゲーム
いつも、岡山に来たとき思うのですが、自由なのがいいですねえ!
これがコミュニティなのかな?
--------------------------------------
今回参加するにいたり、以前SunのnetBeansチームの片貝さんか
ら、「ノベルティ提供しますよ!」と言われていました。なので
言葉にあまえて送って頂いたたくさんの品物をBingoに提供させ
て頂きました。ありがとうございました。
あと、netBeans宣伝させて頂きました。
---------------------------------------
ちなみに私はBingoで2GBのUSBメモリとMomonga Linuxのインストール
DVDをもらいました。
6.5.1,6.7.1,6.8全部でダメ。IcedTeaVMでも、HotspotVMでもダメ。SVNコマンド自体が落ちてるのかなぁ。たまに「ディレクトリの選択」までいくこともあるんだけど、基本的にはウィンドウが閉じて強制終了。たまにウィンドウの書き換えが止まってkill -9以外は受け付けない。うーむ、どうすればいいのやら。
gcj・・では、NetBeansは動かないよな、やっぱり。あんまり試したくないけど>gcjを信用していない
なんか、使えなくなってる?
「チーム->Subversion->チェックアウト」で出てくるダイアログでもエラーが出る。「ツール->プラグイン」でsubversionのWindows用バンドルをインストールして事なきを得る。というか、なんで使えなくなってるんだ?
久しぶりに使って、「WindowsXPって書き換えが見えるOSだったんだなぁ」としみじみ。
Willcom D4は確かにCPUもGPUも遅いですが、Windows7はなるべく書き換えている最中を隠蔽しようとする傾向あるからなぁ。
ともあれ、キーボードは快適です。お正月はこれで乗り切ろう。NetBeansもEclipseもAndroidSDKも入れたことだし。
どうやら、「ATOKでは起こらない」みたいです。
なるほど、これで手許のマシンで起きたり起きなかったりする理由が分かった。常用するものには大概入れてるし、あんまり常用しないのに入れてないからなぁ。
MSの人もMS-IME見限ってるみたいだし、ATOKをつかえと。……うーむ。
いろんなところで日本語まともに使えない問題頻発しているっぽいですが、いかがお過ごしでしょうか。
MySQLが4.1で日本語問題だしまくって放置、結果日本のユーザーが離れたときを思い出しますがどうでしょう。
NB 6.8を入れたマシンによってIMEのツールバーの表示が異なる状態を発見したので上げてみる。
上はあるマシンの状態。NetBeansのエディタにカーソルがあるとずっとこの状態なのでIMEがONなのかOFFなのかぜんぜんわからない。モードも何がなんだか。このあとプロジェクトプロパティなどテキストフィールドがある画面を開いてそこにカーソルを合わせるとちゃんとツールバーは表示されている。Swing自体の不具合ではない模様。やっぱり6.8で入れた致命的なバグなのがわかる(6.7までは日本語はちゃんと使える)。
で、もうひとつのマシンはツールバーの表示はまとも。
違いがわからず悩んでいたが、設定を変えたら同じになった。うえの画像にあるようなどうしようもないやつはMS IMEナチュナルインプット2003を選択している場合。ツールバーの表示がおかしくない場合はIMEスタンダード2003の場合。Office入れるとデフォでナチュラルインプット2003にしてくれてるはずなので普通に考えたらやばい。
でも、NetBeans以外で不具合見たことないんだけれども。6.8はどこをどう変えたんだ?NetBeans6.8を利用する場合はIMEスタンダード2003に切り替えるのをオススメする。
ちなみに以前書いたエディタの問題はどっちも発生する。日本語を確定させた瞬間にスクロール座標が0?になるようだ。一瞬上に移動したのが見える。その後入力箇所を表示させるようにスクロールが走るため、打ち込んだ文字が下側に行きやすいというわけのようだ。
IMEの考慮がNetBeans 6.8ではもれたんだと思う。というか、考慮するところなんてあるか?例外が発生していてそれを握りつぶしているとかなんだろうか。
とにかくNetBeans 6.8で日本語対応パッチが早く出るのを期待する。
[追記]bugzillaによるとターゲットは6.9あたりくさい。6.8.1じゃないのか。きつい。
vi のプラグイン jVi は NetBeans 6.8 でもサポートされています。NetBens 6.8 のリリース後数日はダウンロードのボタンに NB 6.7 - 6.5 としか書いてなかったので動かないのではないかと思った方がいるのではないでしょうか。確認したところ 1.2.6 というバージョンはそのままで 6.8 でも動くそうです。ボタンにも 6.8 という文字を入れてもらいました。
|
先週木曜日、NetBeans 6.8がリリースされました。 今回のリリースはJSF 2.0/Facelets、JPA 2.0、EJB 3.1、JAX-RS、そしてGlassFish v3に対するサポートの向上を含むJava EE 6の完全サポートを提供します。 NetBeans 6.8はPHP ・ JavaFXエディタの改善、Mavenサポートの向上、Kenai.comとの統合の強化もまた含んでいます。 全機能の一覧はこちらで参照できます。 NetBeansチームは同時に多言語版(片貝さんの記事)並びにJava FX Composerのプレビュー版(記事、スクリーンキャスト)もリリースしています。 |
せっかく新バージョンに入れ替えので、新しい事を試みてみたいと思い Androidの開発環境を作って見ることにしました。 ※まだ Android SDK のAPIも読んでいないので道のりは長いですが。。。 必要な情報 Download the Android SDK nbandroid(Project KENAI) (補足) Virtual Deviceを作成する過程でコマンドプロンプトから指示する記述があるのですが、今はGUIで作成できるみたいですね。 https://ddl・・・ でダウ ...
NetBeans 6.8 用の JavaFX Composer のプレビュー版がリリースされました。 Beta アップデートセンターからのリリースですので、 NetBeans 6.8 を起動し、「ツール」>「プラグイン」の「使用可能なプラグイン」で確認してみてください。もし表示されていなければ「カタログを再読み込み」ボタンを押してみてください。
プレビューリリースですがチュートリアルもけっこう用意されていますね。英語ですがスクリーンショットが多いのでそれを見ただけでも使い方はわかるのではないでしょうか。タイトルだけ日本語訳してみます。
- 入門
- バインド
- ステート
- 複数のステート
- テンプレート
- プロファイル
- デザイン領域
- データソース
- データソース - REST サービス
- データソース - REST サービス(続き)
- JavaDB クライアント(スクリーンキャスト)
- Kenai ブラウザサンプルをモバイルエミュレータで動かす
どの JDK を使っているかわからない場合は「ヘルプ」>「製品について」で JDK のバージョンを確認することができます。
NetBeans localization project
has released community languages build for NetBeans 6.8. You can
download it from download
page by selecting your language. Many contributors are providing
translations on Sun's CTI and OpenCTI for now 19 languages! Thank you for your contributions!
Please find which languages are included and the translation progress:
We continue translation NetBeans 6.8 for next two or three months and will provide daily build soon. Please help NetBeans localization. You can join the community of your language from the following link.
2009年12月10日にリリースされた NetBeans 6.8 について、Rubyの起動が遅いとか、早くなった遅くなった等のコメントを見たので、実機インストール前に仮想環境で検証してみました。 仮想環境の構成 OS:Windows XP SP2 Java:Java 6 update 17 CPU:Core2 2.13GHz メモリ:1520MB(仮想環境に割当) 検証方法 OSインストールにJava SDKとNet Beans 6.7、6.8をコピー。 スナップショットを取る都合、 ...
先日、 6.8 が出たばかりですが、 6.9 の新機能案についてです
Web 周りのみですが、コチラにいくつか書かれています
※以降はあくまで案であり、実現されないもの、次バージョンに見送られるものがあるかと思いますので、ご注意ください
一番項目数が多いのが CSS/HTML/JavaScript 関連の新機能・機能追加案です
要望の多い HTML5 や CSS3 のサポートなどを中心に改善されていくかと思われます
また、(活発な PHP サポートグループのブログにもありましたが) NetBeans と Firefox (firebug) との統合、 "Web Profile part of JEE" の "Cloud/virtual image deployment" 、 "Oracle components (ADF)" や "Groovy and Grails" の "AppEngine, GWT plugins support" など興味深い項目が並んでいます
個人的には "Terminal emulator" に期待しており、何かとターミナルを立ち上げることが多いので、 NetBeans 側でできればと思っています
(この機能、結構前から NetBeans のソースコードにはそれらしい名前 ("lib.terminalemulator") があったので、ずっと期待して待っていました)
リリーススケジュールなどもまだ発表されていませんが(09年12月13日現在)、毎回マイナーバージョンアップらしからぬ盛りだくさんの機能が追加されますので、次回も Java EE 6 サポートのブラッシュアップのみといったことにはならないように思います
(そして、 API 周りも大幅に手が入るんだろうなと)
その他、新機能に関してご要望等がありましたら、メーリングリストに投げて頂ければと思います
- Eclipseを使っているとき
- NetBeansを使っているとき
- GIMPを使っているとき
ええと、要は開発するなと(^^;)。
ま、実際開発用のIDEなんかはメモリを山のように食い、その上、アクセスする範囲も広いのでキャッシュに乗り切らないほどのアクセスがありそうなのは確かです。
ReadyBoostつけてスワップを多少高速化しても焼け石に水ですねぇ。ディスクアクセスランプつきっぱなしですから。
Windows7でカーネル周りのメモリ消費量は多少減ったそうですが、どちらにしても1GByteというメモリがどうにかならないと開発はやりづらいですね。
昔はSL-Zaurusでセルフ開発してたってーのに。贅沢になりましたね。私自身も。
NetBeans6.8を試用がてら作っていました。リソースはWindowsMobile版の物を、ソースはAndroid版の物をベースにしています。
いやー、はまったはまった。
- getClass.getResource()はWindows上では大文字小文字を意識しないがjarでは意識する
はじめ、なぜロードできないのかさっぱり判りませんでした。スペルミスに気づくのに数時間。つらかったです。
- jarファイルにスペースを含めるとapplet要素のarchive属性はきちんと見てくれない
それぐらい%20にしてくれればいい物を、けっきょく%20でもうまくいきませんでした。プロジェクト名がもろに出ちゃうので気をつけないと。
ともあれ、Java Applet復権のためにもJavaで作ってみました。いや、手元にFlexBulderもあるんで、Flashでも作れはするんですが。
なんだこれ、ベータのときは問題なかったのに何をいじったんだ…?デモよくよく思い出すとベータのときもあったかも。フリーズバグのほうが致命的だったので気にしてなかったというか。
日本語を入力するとスクロールが勝手にされるようだ。かならず中央部にくるとかならまだわかるのだが、そうでもない。必ず画面の端にスクロールされたりする。規則性はあるようだが。すぐに下の行が読めなくなるとかなに考えているんだ?
OS標準のMS-IMEの話で、もちろんGoogleのは一度も入れたことはない。
念のため過去のNetBeansを起動するも、当たり前だが問題はない。6.8だけの不具合だ。
非常に使いにくい。
日本語は打ち込むなってことか・・・。
これ致命的なバグくさい。
6.8はマルチバイト圏の方はしばらく様子をみたほうがいいようだ。















