私は2つのEclipseプロジェクトで使用しているモデルクラス(MVC pattern)を持っています。Eclipseプロジェクト間で共有されるクラスのパッケージプライベートフィールドへのアクセス
1つのプロジェクトは、それをProducer
と呼びましょう。ストリームからデータをキャプチャしてデータベースに格納しています。問題のモデルクラス、たとえばObjectModel
は、シリアライズしてdbに格納する前にストリームを非直列化して操作するために使用されます。
もう1つのプロジェクトは、Consumer
としましょう。データベースに保存されているデータを引き込み、画面上に表示しています。同じモデルクラスを使用して、格納されたデータをデシリアライズしてビジュアライゼーションアプリケーションで使用します。
私はObjectModel
をEclipseプロジェクトに入れて、Producer
とConsumer
プロジェクトでソースを共有する予定でした。ただし、各アプリケーションには、パッケージ - プライベートアクセス修飾子を利用してObjectModel
のフィールドを取得および設定する同じパッケージ内のクラスが現在存在します。
複数のEclipseプロジェクトにまたがってソースを共有し、共有ソースとのパッケージプライベートアクセスを維持する方法はありますか?
UPDATE:私はトラブル私は投稿する前にこれをしようとしなかった理由であるEclipseのプロジェクトで共有コードを、取得を抱えていました。最後にその部分を動かして、別の答えhereとして書きました。
あなたはなぜ ''共有ソースとのパッケージプライベートアクセスを維持したいのですか? – Vikdor
'Producer'には、複数の異なるストリームからのデータをカプセル化する' ObjectModel'インスタンスを生成する 'ObjectModelFactory'クラスがあります。 'Consumer'にはクラス「ObjectModelMerger」があり、これはライブ更新を非直列化「ObjectModel」にマージします。 'ObjectModelFactory'と' ObjectModelMerger'を除いてプログラムのどの部分にもsetterを必要としないので、これらのクラスのそれぞれがアクセッサを経由するよりも、ObjectModelフィールドに直接アクセスするほうがはるかに良いです。 'ObjectModel'フィールドの設定へのアクセス。 – ericsoco