2016-03-27 16 views
-1

JavaFXで組み込みクラスを修正する必要がありました。なぜなら、私が必要とするメソッドはprivateだったので、publicに変更しました。さて、私は/usr/lib/jvm/jdk1.8.0_66/javafx-src.zipにソースコードを見つけ、コードを修正し、Eclipseを再起動しました。Eclipseの変更を見ることができます。組み込みのクラスですが、Eclipseでは必要なメソッドについてはまだ表示されていません。問題は、組み込みクラスを再コンパイルする必要があることだと思います。どうすればいいのですか、インターネットでたくさん検索しましたが、答えが見つかりませんでした。Java組み込みクラスを再コンパイルします

+2

プライベート関数を公開する必要がある_why_を説明する方が良いかもしれませんが、これは本当に悪い考えです。 – tddmonkey

+1

あなたがしようとしていることを実行する方法はほぼ確実です。 (Reflectionを使うのが最も悪い選択肢かもしれません) –

+1

**あなたのマシン上で**動作させるかもしれません。他のインストールされているJavaのバージョンでは動作しません(実際に** Javaではなくなります)。 –

答えて

1

私がこれに答える前に、それは悪い習慣であり、このアプローチが間違っていることを非常に明確にしています。

しかし、本当にあなたの周りに仕事をしたい場合は、そのクラスのソースコードを取得することができます。

クラス自体の名前を変更し、クラスパスに追加して使用します。 このクラスファイルで再編集することができます。

+0

私はこのクラスがプライベートAPIである他のクラスを参照しているので、これはうまくいくとは思わない。名前を変更したクラスはそれ自身ではコンパイルされません。基本的にソースコードのセクション全体を再構築する必要があります。しかし、あなたが言うように、あなたはまったくこれをやってはいけません。 –

+0

それは本当に悪いことです。 – Amriteya

関連する問題