FaqGcjJa

プロジェクトで Sun の JDK の代わりに GCJ を使用できますか?

試してみてください。 GCJ 自体はよく出来ています。GNU Classpath はまだ完成から程遠いようですが開発は順調のようです。ここでは Fedora Core 4 でどのように動くのかを説明します:

1. 正しい RPM をインストールしてあるのか確認してください:


$ rpm -ql java-1.4.2-gcj-compat-devel libgcj
...
/usr/lib/jvm/java-1.4.2-gcj-1.4.2.0/bin/jar
/usr/lib/jvm/java-1.4.2-gcj-1.4.2.0/bin/java
/usr/lib/jvm/java-1.4.2-gcj-1.4.2.0/bin/javac
/usr/lib/jvm/java-1.4.2-gcj-1.4.2.0/bin/javadoc
...
/usr/share/java/libgcj-4.0.2.jar
...

実際には次のようにインストールされているかもしれません。

/usr/bin/jar
/usr/bin/java
/usr/bin/javac
/usr/bin/javadoc
/usr/lib/jvm/java-1.4.2-gcj-1.4.2.0/jre/lib/rt.jar

これはこれでかまいませんが実際には必要ありません。

2. ツール> Java プラットフォームマネージャー で、 新しい Java プラットフォーム を正しい "JDK ホーム" で作成します。例えば、/usr はでは動くかもしれません。あるいは /usr/lib/jvm/java-1.4.2-gcj も試してください。必要ならばソースを http://www.gnu.org/software/classpath/ から取得して設定してもよいでしょうし、Sun の JDK 1.4 がインストールしてある場所から src.zip を使ってもよいでしょう。

3. Java プロジェクトを作成します。サンプル > 一般 > GUI Form Examples を使ってみると Swing は動くようです。しかし Anagram Game はまだ動きませんでした。(イベントハンドリングに問題があるようです)

4. プロジェクトの プロパティー ダイアログで、ライブラリGNU libgcj 4.0.2 ...Java プラットフォーム として選んでください。必要ならばソースレベルは 1.5 ではなく 1.4 にしてください。

(現在の GNU コンパイラは実際には JDK5 のソースを処理できるようです。しかし Classpath ランタイムは JDK 5 言語仕様をサポートしていませんので総称(ジェネリクス) を仕様するのはよい方法ではありません。Classpath 1.19 は総称をサポートする最初の "プレビュー" ビルドです。もうすぐ利用可能になるでしょう)

5. これで動作するはずです。普通にプロジェクトの構築と実行ができます。もし心配であればプロジェクトプロパティーの実行>VM オプション-showversionを追加して試してみてください。Javadoc の生成も動きます。ただしデバッグはサポートしていません。

この設定方法は一般的な Java バイトコードを生成しインタプリタで実行するだけのものです。ネイティブコードを生成しプログラムを実行した場合にはbuild.xmlにカスタムターゲットをいくつか追加したり、他にサブプロジェクトやライブラリが必要になるでしょう。もしうまくいったらこのページに方法を是非追加してください!!

ヒント: AWT ベースのフォームに Matisse (フリーデザイン) を使うこともできますよ!! GCJ のランタイムで実行すると AWT は GTK として表示され、GNOME アプリケーションのようになります。ただウィジェットセットは限られています。



バージョン: NetBeans 5.0 (4.1、4.0 も同様?)

プラットフォーム: Linux (Cygwin を使った Windows など)



Not logged in. Log in, Register

By use of this website, you agree to the NetBeans Policies and Terms of Use. © 2012, Oracle Corporation and/or its affiliates. Sponsored by Oracle logo