2017-02-06 28 views
3

環境設定>インストール/アップデート>使用可能なソフトウェアサイトで強制的にリロードを行っても、アップデートサイトの情報が更新されないという困惑に直面しています。Eclipse p2リポジトリキャッシュをクリアする方法

私は、私が維持しているオープンソースプロジェクトのステージング/テスト更新サイトとして使用するローカル更新サイト(Windowsではfile:/プロトコル)とオンライン更新サイト(https://)を持っています。

に保存された更新サイトプロジェクトを使用して更新サイトを構築し、構築するたびにきれいに拭き取ります。別のEclipseインスタンスで新しいリリースをテストして変更を検証したら、更新サイト全体を自分のサーバーにアップロードします。次に、ユーザーが行うことをシミュレートするために、別の物理マシンで実行される別のEclipseインスタンスでプラグインを更新します。

私は(昨日)別のバージョン、2.2.0.201702052007を作り、それを私のサーバーにアップロードしました。以前のバージョンは2.2.0.201702042059でした。

問題は、私の開発マシンのEclipseインスタンス(Mars.2とNeon)が、更新サイト情報をリロードしても前のバージョンから最後のバージョンを報告し続けるということです。しかし、他のマシンは問題なく新しいバージョンを見ることができます。

  • が更新サイトの情報をリロード:

    これは私が試したものですたびに、私は言って、確認メッセージを取得「[...]のための情報をサーバーから再ロードされました」再ロードされていないことが判明しました。以前の機能バージョンが表示されます。

  • 別のマシンの別のEclipseインスタンスから更新サイトにアクセスする:新しいバージョンが表示されます。
  • 更新サイトのsite.xmlファイルをブラウザから読み込む:新しいバージョンが表示されます。
  • アップデートサイト全体をローカルフォルダにダウンロードし、content.jarartifacts.jarを解凍して、それらのJARファイルに埋め込まれたXMLファイルを読み取ることができます。古いバージョンのトレースは表示されません。
  • 更新サイトを削除し、Eclipseを再起動し、更新サイトをもう一度追加してください。問題はまだ残っていました。
  • 最後の手段として、更新サイトのすべてのファイルをサーバーから削除しました。Eclipseは、サーバーからの情報の再読み込みに成功したと報告しました。
  • 私はVPSのhttpdサービスをシャットダウンします。 Eclipseは再起動するまで成功を報告し、失敗しました。しかし、いったんWebサーバーが再びオンラインになると、更新サイトが存在しないと言っても、実際にWebサーバーに要求を送信できませんでした。その結果、オンラインの更新サイトは空になり、Eclipseを再起動してもそれは変わりません。
  • 更新サイト(ネットワークインタフェースを無効)へのネットワーク接続がありませんでも、[EDIT]さらに不可解な、リロードボタンレポートの成功。[/ EDIT]

でがあるようですプロビジョニングフレームワークは、UIと私のサーバの間のどこかのキャッシュで、その非常に情報をリロードする明示的な要求にもかかわらず、古い情報と機能のバージョンを報告します。

プロビジョニングフレームワークをリセットするために削除できるファイルやフォルダはありますか。可能であれば、キャッシュを完全に無効にします。

答えて

3

私は、Oomphが明らかに更新サイトの情報検索プロセスに対処していることを知りました。

とにかく、通常の操作(今のところ)を復旧して、適切なファイルを先にC:\Users\...\.eclipse\org.eclipse.oomph.p2\cacheに削除することで情報を適切に再読み込みすることができました。

「適切なファイル」とは、そのフォルダ内のファイルに、Eclipseインスタンスが認識しているリポジトリのURLの名前が付けられているということです。

+0

grep検索でworkspaceまたはeclipseフォルダにトレースが見つかりませんでした。ありがとうございました。 –

+0

この混乱している動作に対してバグを提出しました:https://bugs.eclipse.org/bugs/show_bug.cgi?id=513746 –

関連する問題