Force.com 移行ツール の使用
Force.com IDE に加えて、Apex のリリースにスクリプトを使用することもできます。
Apache の Ant 開発ツールを使用して Developer Edition または Sandbox を使用している組織から本番組織にメタデータの変更および Apex クラスをファイルベースでリリースする場合は、Force.com 移行ツールをダウンロードします。
Force.com 移行ツールを使うには、次を行います。
- http://www.oracle.com/technetwork/java/javase/downloads/index.html にアクセスし、Java JDK をインストールします。
- http://ant.apache.org/ にアクセスし、Apache Ant のバージョン 1.6 以降をリリースマシンにインストールします。
- 環境変数 (ANT_HOME、JAVA_HOME、PATH など) を、http://ant.apache.org/manual/install.html の『Ant Installation Guide』で指定されたように設定します。
- コマンドプロンプトを開き、ant –version を入力して、JDK と Ant が正しくインストールされているか確認してください。出力は次のようになります。
1Apache Ant version 1.7.0 compiled on December 13 2006 - Salesforce 開発者の「Force.com Migration Tool」ページから Force.com 移行ツールをダウンロードします。
- ダウンロードしたファイルを、任意のディレクトリに展開します。Zip ファイルには次が含まれます。
- ツールの使用方法を説明した Readme.html ファイル
- Ant タスクを含む Jar ファイル: ant-salesforce.jar
- 次の内容を含むサンプルフォルダ:
- SampleDeployClass.cls と SampleFailingTestClass.cls を含む codepkg\classes フォルダ
- SampleAccountTrigger.trigger を含む codepkg\triggers フォルダ
- 例で使用するカスタムオブジェクトを含む mypkg\objects フォルダ
- 組織から例を削除するための XML ファイルを含む removecodepkg フォルダ
- build.xml の Ant タスクを実行するための認証情報を指定するサンプル build.properties ファイル
- deploy および retrieve API コールを実行するサンプル build.xml ファイル
- 以前のバージョンの Force.com 移行ツールをインストールして ant-salesforce.jar ファイルを Ant lib ディレクトリにコピーしている場合は、lib ディレクトリの jar ファイルを削除します。lib ディレクトリは、Ant のインストール先のルートフォルダにあります。Force.com 移行ツールは、配布 ZIP ファイル内にある ant-salesforce.jar ファイルを使用します。このファイルを Ant lib ディレクトリにコピーする必要はありません。
- 展開したファイル内のサンプルサブディレクトリを開きます。
-
build.properties ファイルを編集します。
- Salesforce 本番組織ユーザ名およびパスワードを、sf.user と sf.password 項目にそれぞれ入力します。
- Sandbox 組織にリリースする場合、sf.serverurl 項目を https://test.salesforce.com に変更してください。
- サンプルディレクトリのコマンドウィンドウを開きます。
-
ant deployCode を入力します。これは、Force.com 移行ツールで提供されたサンプルクラスと Account トリガを使用して、deploy API コールを実行します。
ant deployCode は、build.xml ファイルの deploy という名前の Ant ターゲットをコールします。
1<!-- Shows deploying code & running tests for package 'codepkg' --> 2 <target name="deployCode"> 3 <!-- Upload the contents of the "codepkg" package, running the tests for just 1 class --> 4 <sf:deploy username="${sf.username}" password="${sf.password}" serverurl="${sf.serverurl}" deployroot="codepkg"> 5 <runTest>SampleDeployClass</runTest> 6 </sf:deploy> 7 </target>詳細は、「deploy について」を参照してください。
-
ant deployCode の実行の一部として追加されたテストクラスとトリガを削除するには、コマンドウィンドウ ant undeployCode 内で次を入力します。
ant undeployCode は、build.xml ファイル内で undeployCode という Ant ターゲットをコールします。
1<target name="undeployCode"> 2 <sf:deploy username="${sf.username}" password="${sf.password}" serverurl= 3 "${sf.serverurl}" deployroot="removecodepkg"/> 4</target>