tyoshikawa1106のブログ

- Force.com Developer Blog -

SFDC:Force.com移行ツールのインストール方法

Force.com移行ツール (Force.com Migration Tool)とはApache の Ant 開発ツールを使用してApex Codeをデプロイしたり、削除したりといったことが行えるツールです。どのようなツールなのかは一応把握しているのですが、実際に利用したことはなかったのでインストール方法を確認してみました。

はじめに

インストール手順はSalesforceのHelpサイトで紹介されています。今回はこれを参考に試しています。

Force.com 移行ツールインストール方法
https://help.salesforce.com/apex/HTViewSolution?id=000176910&language=ja


Force.com移行ツールを使用するにはAntとJava SDKが必要になります。Antのインストール方法は次のサイトが参考になりました。


Antインストール方法
Ant 1.8.2のダウンロード及びインストール - Apache Antの使い方


コマンドプロンプトで次のコマンドを実行することでJavaのバージョンを確認できます。

java -version

f:id:tyoshikawa1106:20150210210203p:plain


Javaのバージョン確認はこちらのサイトが参考になりました。
WindowsまたはMacでJavaバージョンを確認する方法 - 手動の方法

インストール手順

1.Version1.6以降のApache Antをインストール

a.ダウンロード

http://ant.apache.org/

f:id:tyoshikawa1106:20150210210757p:plain


ダウンロードページはこのURLで直接アクセスできます。
http://ant.apache.org/bindownload.cgi


f:id:tyoshikawa1106:20150210211247p:plain


Current Release of Antのあたりにダウンロードリンクが用意されています。この中のZipファイルをダウンロードします。

f:id:tyoshikawa1106:20150210211348p:plain

b.ダウンロードしたファイルを任意のパスに展開

例) C:\pg\apache-ant-1.9.4 という感じです。

f:id:tyoshikawa1106:20150210211423p:plain

c.システムの環境変数にパスを登録

マイコンピュータで右クリック>[プロパティ]>[詳細設定]>[環境変数]

f:id:tyoshikawa1106:20150210211448p:plain:w300


システムの環境変数[Path]をクリック>[編集]

f:id:tyoshikawa1106:20150210211518p:plain:w300


変数値の最後部に[;C:\pg\apache-ant-1.9.4\bin]を追加

f:id:tyoshikawa1106:20150210211648p:plain

d.端末を再起動する
e.コマンドプロンプトにてant -versionを入力し動作することを確認

このときバージョン情報もエラーメッセージも何も表示されない現象が発生しました。

f:id:tyoshikawa1106:20150210211715p:plain


原因ですが、Lhaplusで解凍した際にエラーが発生していました。Lhaplusをアンインストールしてから再度展開し直すことでひとまず解決しました。


バージョン情報は表示されるようになりましたが、代わりに「Unable to locate tools.jar. Expected to find it in...」というエラーがでるようになりました。

f:id:tyoshikawa1106:20150210211835p:plain


エラーの解決に参考になりそうなサイトがあったので確認してみるとJAVA_HOMEの設定が原因みたいです。
takuanのメモ antでUnable to locate tools.jarが出た場合の対処


自分の環境で確認してみたところ環境変数にJAVA_HOMEが存在していませんでした。JAVA_HOMEは次のサイトを参考に設定しました。

PATHの設定及び環境変数JAVA_HOMEの設定 - Javaダウンロードとインストール


f:id:tyoshikawa1106:20150210211944p:plain:w300


設定後、再起動してから『set JAVA_HOME』コマンドで設定確認します。

f:id:tyoshikawa1106:20150210212034p:plain:w300


無事に設定できていることを確認できました。この状態で『ant -version』コマンドを実行してみます。

f:id:tyoshikawa1106:20150210212138p:plain:w300


エラーが消えて正常に表示されるようになりました!...ということで続きを進めて行きます。

2.設定>開発>ツール>と画面遷移し、Force.com 移行ツールのリンクをクリックしファイルをダウンロード

f:id:tyoshikawa1106:20150210212331p:plain

5.build.propertiesに対象組織のユーザ名、パスワードを設定

sf.username = <Insert your Salesforce username here>
sf.password = <Insert your Salesforce password here>

f:id:tyoshikawa1106:20150210212431p:plain


build.propertiesはテキストエディタで編集できます。

f:id:tyoshikawa1106:20150210212519p:plain

6.コマンドプロンプトにてファイルを展開した先のSampleフォルダまで遷移

例) C:\pg\salesforce_ant_32.0\sample

f:id:tyoshikawa1106:20150210212605p:plain:w300

7.build.xmlのtarget nameを指定し移行ツールを実行

Sampleフォルダ内のcodepkgをDeployするコマンドは次のとおりです。

ant -Dpackage.xml=package.xml -f build.xml deployCode

試しに上のコマンドでDev環境へのデプロイを実行してみました。

f:id:tyoshikawa1106:20150210212839p:plain

処理は実行されましたが、エラーが発生したみたいです。エラーメッセージを見てみるとログイン情報に誤りがあったみたいです。


このエラーの原因はログイン情報の指定の仕方でした。次のような感じで入力していましたが、<>は不要だったみたいです。

sf.username = <test@sfdcdevelopers.com.test>
sf.password = <demo123>

次の用に入力すればいいみたいです。(シングルクォートやセミコロンは不要です)

sf.username = test@sfdcdevelopers.com.test
sf.password = demo123


これで正常に実行できました。

f:id:tyoshikawa1106:20150210212919p:plain


組織のApexクラスを確認してみると、サンプルクラスが登録されていることを確認できます。

f:id:tyoshikawa1106:20150210213052p:plain


デプロイされるファイルはcodepkgフォルダ内のファイルになります。(ApexクラスとApexトリガが用意されています。)

f:id:tyoshikawa1106:20150210213118p:plain


以上がForce.com 移行ツールのインストール手順となります。

補足

  • build.propertiesやbuild.xmlの詳細についてインストール先フォルダ内のReadme.htmlを参照ください。
  • Force.com移行ツール自体は下記マニュアルを参照ください。