この文章は Salesforce 機械翻訳システムを使用して翻訳されました。詳細はこちらをご参照ください。
英語に切り替える

第二世代管理パッケージ (パイロット) からのメタデータコンポーネントの削除

第二世代管理パッケージで不要になった Apex クラスなどのメタデータコンポーネントを削除します。Spring ’21 以降、この機能は、一連のメタデータコンポーネントを使用してパイロット運用されています。

2GP からのメタデータコンポーネントの削除は、特定の契約条件への同意が必要なパイロットプログラムを通じて一部のお客様に提供されています。このプログラムに参加する方法については、Salesforce にお問い合わせください。パイロットプログラムは変更される可能性があり、参加は保証されません。機能は、Salesforce がドキュメント、プレスリリース、または公式声明で正式リリースを発表しない限り、正式リリースされません。特定期間内の正式リリースあるいはリリースの有無は保証できません。現在正式にリリースされている製品および機能に基づいて購入をご決定ください。2GP からのメタデータコンポーネントの削除に関するフィードバックや提案は、パートナーコミュニティの管理パッケージグループに投稿してください。

登録者組織でのコンポーネント削除の影響

パッケージのアップグレード時、登録者組織から物理削除されるのは、特定の種類のコンポーネントのみです。パッケージバージョンで削除されたメタデータコンポーネントの大部分は、パッケージのアップグレード後も登録者組織に残り、廃止としてマークされます。登録者組織でパッケージがアップグレードされる場合は、設定変更履歴により、どのコンポーネントが削除されたかがログに記録されます。廃止となったメタデータを削除できるのは、登録者組織のシステム管理者です。

このパイロットで、第二世代管理パッケージからの削除がサポートされるのは、次のメタデータコンポーネントです。

メタデータコンポーネント パッケージをアップグレードしたときのメタデータコンポーネントに対する処��
Apex クラス (グローバル Apex クラスは除く) 物理削除
Apex トリガ 物理削除
Aura 定義バンドル 廃止としてマーク
コンパクトレイアウト 廃止としてマーク
カスタムアプリケーション 廃止としてマーク
カスタム項目 廃止としてマーク
カスタムオブジェクト 廃止としてマーク
カスタムタブ 廃止としてマーク
項目セット 廃止としてマーク
Layout 廃止としてマーク
リストビュー 廃止としてマーク
権限セット 廃止としてマーク
クイックアクション 廃止としてマーク
レコードタイプ 廃止としてマーク
共有の理由 廃止としてマーク
静的リソース 廃止としてマーク
入力規則 廃止としてマーク
Visualforce コンポーネント (グローバルコンポーネントは除く) 物理削除
Visualforce ページ 廃止としてマーク
WebLink (カスタムボタンまたはカスタムリンク) 廃止としてマーク

メタデータコンポーネントの削除方法

このパイロットに参加するには、https://partners.salesforce.com/partnerSupport でケースを登録します。

パイロットが有効になったら、Salesforce DX プロジェクトからメタデータコンポーネントのソースファイルを削除して、新しいパッケージバージョンを作成します。新しいパッケージバージョンをテストし、削除したメタデータがなくても正常に機能していることを確認します。

第二世代管理パッケージからメタデータコンポーネントを削除する前に

第二世代管理パッケージからメタデータコンポーネントを正常に削除するには、次の点に留意してください。

  • パイロットへのアクセスをまだ要求していない場合は、要求します。
  • 削除できるメタデータコンポーネントのリストをよく理解します。
  • 削除予定のメタデータに対する依存関係がないことを確認します。

パッケージ内のメタデータへの依存関係の削除

削除予定のメタデータコンポーネントに対して依存関係がある場合は、最初に依存関係を削除してから、メタデータコンポーネントを削除します。

たとえば、ページレイアウトで参照されるカスタム項目を削除する前に、ページレイアウトを編集して、カスタム項目への参照を削除します。次に、ソースファイルからカスタム項目を削除して、新しいパッケージバージョンを作成します。

シナリオによっては、コンポーネントを削除するために 2 段階の方法が必要なものがあります。たとえば、Visualforce コンポーネントを含む Visualforce ページを削除する予定があり、このページを、Lightning コンポーネントを含む Lightning ページに置き換える場合、Visualforce ページと Visualforce コンポーネントの両方を 1 回のアップグレードで削除すると、登録者に対して問題が発生することがあります。これらの問題が発生するのは、パッケージのアップグレード時に Visualforce コンポーネントが削除され、Visualforce ページが廃止となるためです。

この例で、登録者に対して問題が発生しないようにするには、Visualforce コンポーネントへの参照を Visualforce ページから削除し、新しいパッケージバージョンを作成して、アップグレードをプッシュします。次に、パッケージバージョンから Visualforce ページを削除して、このアップグレードを登録者にプッシュします。

他のパッケージにある依存関係の削除

メタデータコンポーネントを削除するにあたり、最初にメタデータへのすべての参照を削除します。これには、そのメタデータコンポーネントに依存する他のパッケージ内の参照も含まれます。たとえば、公開 Apex クラスを削除する場合は、他のパッケージが Apex @namespaceAccessible アノテーションを使用してそのクラスを参照していないことを確認します。

このセクションでは、PackageA は、メタデータコンポーネントを削除する予定のパッケージを参照しています。PackageB は、PackageA から削除されるメタデータに依存する任意のパッケージです。PackageB のメタデータコンポーネントまたは Apex クラスへの参照がある場合は、次の手順を実行します。

  1. メタデータコンポーネントへの参照を PackageB から削除します。
  2. PackageB の新しいバージョンを作成します。
  3. PackageB の新しいバージョンを登録者にプッシュします。
  4. PackageA から削除予定のメタデータへの参照が他のパッケージに含まれている場合は、これらの手順を繰り返します。

メタデータコンポーネントへのすべての参照が削除されたら、PackageA の Salesforce DX プロジェクトからメタデータコンポーネントのソースファイルを削除して、PackageA の新しいバージョンを作成します。このアップグレードを登録者にプッシュする前に、新しいパッケージバージョンをテストして、正常に機能することを確認します。