結局、私は古い活動のトリックを袋から取り出し、許容できる解決策を手に入れました。後世のためにここにそれを文書化しますが、誰かがより良い方法を思い付くかどうか聞くのが大好きです。
最初に、「このビューは意図的に空白にしています」などの情報を表示するだけの空白のViewPageを作成して、アップグレードが成功したことをユーザーに知らせ、ビューを閉じることができるようにします。この例では、同等の機能がどこにあるかを説明し、クリックしてアプリケーションのその部分に移動できるリンクを用意します。
次に、このビュークラスを古いビューIDの実装として登録し、復元不可としてマークします。
<view
allowMultiple="false"
category="com.foobar.category"
class="com.foobar.ui.views.DeprecatedView"
id="com.foobar.ui.views.OldView"
name="My Old View"
restorable="false"/>
最後に、アクティビティトリックをバッグから引き出す必要があります。新しいアクティビティを作成し、それにビューを入れます。これにより、古いビューが[ビューの表示]、[その他...]ダイアログから除外され、新しいユーザーに再度表示されなくなります。例えば:
<extension
point="org.eclipse.ui.activities">
<activity
name="Deprecated"
description="Supress old views that are no longer used."
id="com.foobar.hidden">
</activity>
<activityPatternBinding
activityId="com.foobar.hidden"
pattern="com.foorbar.plugin/com.foobar.ui.views.OldView"
isEqualityPattern="true">
</activityPatternBinding>
</extension>
ユーザーエクスペリエンスでは、アップグレード後、古いビューが表示されていた場合、ユーザーは理由を説明し、何をすべきかを説明する素晴らしいメッセージを受け取ります(つまり、古いビューを閉じて移動します)。いずれにせよ、Eclipseを閉じて再起動すると、そのビューはパースペクティブに表示されなくなります。新規ユーザーには、[ビューの表示]ダイアログにビューやそのヒントが表示されることはありません。そのため、数回のリリース後、全員がアップグレードしたと確信したら、plugin.xmlなどから非推奨のビュー登録を削除できます。
それは私が思いついた最高の経験ですが、人々がより良いものを考えているかどうか聞いてうれしいです。Eclipseアクティビティのフィルタリングについて詳しく知りたい場合は、こちらをご覧ください。ViewRegistryコードとShowViewDialogコードをステップ実行したときに、登録済みのビューをフィルタリングするために見つけることができる唯一の方法です。