tyoshikawa1106のブログ

- Force.com Developer Blog -

SFDC:Force.com移行ツールでApexクラスの削除

環境構築はこちら。


こんな感じにファイル一式を用意できれば大丈夫です。
f:id:tyoshikawa1106:20170618221225p:plain


build.propertiesで対象組織のユーザIDとパスワードを指定できます。
f:id:tyoshikawa1106:20170618221318p:plain


今回は例としてsample.pageを削除します。
f:id:tyoshikawa1106:20170618221455p:plain


removecodepkgフォルダにdestructiveChanges.xmlがあります。そこで削除対象のページ・クラスを指定します。
f:id:tyoshikawa1106:20170618221659p:plain


処理実行前にsalesforce_ant_39.0フォルダの下のフォルダに移動してください。

cd /Users/tyoshikawa1106/tools/salesforce_ant_39.0/src

ページ・クラス指定後に削除処理を実行します。

$ ant -Dpackage.xml=package.xml -f build.xml undeployCode


ant -Dpackage.xml=package.xml -f build.xmlまでは共通でその後が処理によって異なります。こちらはbuild.xmlファイルに実行できる処理が記載されています。
f:id:tyoshikawa1106:20170618222043p:plain


実行すると次のようになります。
f:id:tyoshikawa1106:20170618222810p:plain


実行後に対象ページにアクセスしようとすると削除されていることを確認できます。
f:id:tyoshikawa1106:20170618222851p:plain


無条件に削除できるのではなく、別のコンポーネントで呼び出したりされているときちんとエラーとなります。
f:id:tyoshikawa1106:20170618222936p:plain


運用組織の場合は通常のリリースと同じでApexテストが実行されます。