Swing ワーカーがバックグラウンドで動作しているときに、addPropertyChangeListener で propertyChange が呼び出されない理由について質問しました。コードに何か問題があると思いました。コードはOKだったので、誰も助けることができませんでした。propertyChange が呼び出されたラップトップで実行すると、最終的に確認が取れました。
では、何が間違っているのでしょうか?Netbeans、Java、私の Ubuntu で何か問題が発生しましたか? 私の直感では、Netbeans は、Java の奥深くにある propertyChange のようなものに影響を与えるべきではありません。
何かをテストするために、プログラムのクリーンアップとビルドを行い、Netbeans の外部で実行したところ、propertyChange が呼び出されました。次に、利用可能な JDK を調べてみることにしました。/usr/lib/jvm 内には、java-1.5.0-gcj-4.6 (古いもので、最後にいつ使用したかわかりません)、java-6-openjdk-i386、および java-7-openjdk-i386 があります。
質問は、私が使用している Java はどれかということでした。たぶん、Java がおかしくなり、それが propertyChange が呼び出されない理由でしょうか? Java バージョンを印刷してテストすることにしました。私が得たNetbeansの内部:
Sun Microsystems Inc. http://java.sun.com/ 1.6.0_27
私が得たクリーンでビルドされたバージョンでは:
オラクル社 http://java.oracle.com/ 1.7.0_25
オラクルが Sun を買収して以来、Java 7 の名前を変更した可能性があると思います。クリーン バージョンとビルド バージョンで Java 6 を実行するように強制できるかどうかを確認する必要があります。
私が本当に聞きたいのは、netbeans が propertyChange が呼び出されるかどうかの問題に関与できるかどうかについての意見だと思いますか? それとも、私が使用しているJDKの問題だけですか?
ありがとう、イラン