NetBeansのロケールの問題
最近、NetBeansでいろいろ試しているのですが、NetBeansは部分的にしかlocaleを参照していないらしく、文字化けに遭遇しています。Ubuntu のディフォルトエンコーディングであるUTF-8では表示された日本語のうち数文字が化けるという症状があるので、netbeans.confで起動時のオプションに--locale en(--locale Cも同じ結果)を指定して使っています。GUIなどは全て英語で表示されるようになって、とりあえず読めないところはなかったのですが、JavaDBの出力がだめでした。JavaDBの出力はlocaleオプションに無関係に日本語で出力されます。NetBeans 5.5は日本語化されたものを使っているのでlocaleを無視されてもとりあえず起動、停止などのメッセージを見ることができますが、NetBeans 6の国際化はまだのようで、四角い枠が表示されただけです。結局、NetBeans 6を使うときは端末を開いてLANG環境変数をen_USにして、手動で起動しています。
どこかに何かを書くと解決されるのでしょうか???
NetBeans Ruby PackでApache Derby
NetBeansでJRubyが使えるようになったのでdeveloperWorksに掲載されていたTwo ways to build Apache Derby database applications in JRuby(https://www6.software.ibm.com/developerworks/education/os-ad-jruby/)のサンプルを動かしてみました。試したのはこのコードです。
# main.rb # 2007/03/06 # puts "Hello World" require 'java' include_class("java.lang.System") System.out.println("Hello Java World") module JavaSql include_package 'java.sql' end include_class("java.lang.Class") { |packagename, classname| "J" + classname} JClass.forName("org.apache.derby.jdbc.EmbeddedDriver") connection = JavaSql::DriverManager.getConnection("jdbc:derby:DerbyTest;create=true", "", "") stmt = connection.createStatement() rs = stmt.executeQuery("select name from employees") while (rs.next()) do puts rs.getString("name") end
NetBeansではこんなふう(http://www.servletgarden.com/images/DerbyInRuby.png)に表示されました。とても苦労したのはどうやってderby.jarをRubyプロジェクトから参照するか、です。さんざんGooglingして探し回ったのですが、どうやら、JavaプロジェクトのようにLibrariesフォルダに設定すると参照されるような方法はまだ用意されていないらしく、NetBeansのGUIでどうにかすることはできませんでした。が、NetBeansの各種設定が保存されている.netbeansディレクトリ以下、/home/username/.netbeans/dev/jruby-0.9.2/libにderby.jarへのリンクを作ったら動いてくれました。
ちょっと不便ですがさほど大変な作業ではないので、当面は必要なJarアーカイブへのリンクを作りつついろいろと試してみるとよさそうです。