最近、いくつかのテキスト フィールドとボタンを備えた非常に基本的な Java Swing プログラムを作成しました。このプログラムは、Java 1.5 を使用する Ubuntu で問題なく動作します。しかし、OSX (10.4) で実行しようとすると、メイン ウィンドウは正しく表示されますが、プログラムは応答しないようです。どのボタンをクリックしても、何も起こらないようです。
私は Mac OSX についてほとんど何も知らないので、間違っている可能性はありますか?
イベントディスパッチスレッドから何かを実行している可能性がありますか?たとえばJTextArea
、main
スレッドでを作成、表示、変更している場合があります。
クラスパスに SWT がある場合があります。これは私が抱えていた問題に似ています。私の記憶が正しければ、Mac SWT jar は特定の起動フックを使用して自動的に起動します。次に、SWT が Swing に干渉します。
通常、Java プログラムは OS X で正常に動作します。たとえば、Sound Bridge Commanderは、Mac と Linux で正常に動作する Java アプリです。ただし、Macボックスが完全に最新であることは間違いありません。あなたはそれがTigerを実行していると言いました。つまり、それは数年前のものであり、それが持っているJVMはあなたがコンパイルしたものと互換性がないかもしれません.
これは、コードの一部がJava1.4ではなくJava5用にコンパイルされている可能性があるため、コードを呼び出そうとすると、JVMから例外がスローされて表示されません。
私たちが試すことができるように、コードをオンラインのどこかに置く機会はありますか? 私は実際に10.4も使用しているので問題ありません。