Posted at

いにしえの Force.com ソースコードをデプロイする

More than 1 year has passed since last update.

この記事は、Salesforce Platform Advent Calendar 2017 18日目の投稿になります。


はじめに

昔作った Force.com のソースコードを新しい Developer 環境にデプロイしたいと思います。

pacakage.xml の Version タグによると、バージョンは「16.0」です。

現在「38.0」ですので、なかなか古いと言えるのではないでしょうか。


準備


Eclipse

Eclipse 4.5 に Force.com プラグインをインストールします。

まさかのここからスタートですが、気を確かにいきましょう。

2017-11-29_09h01_07.png


ソースコード

SVN に保管してあったソースコードをローカルに展開します。

package.xml の Version を 38.0 に修正します。(これはしなくてもよいかも)


デプロイ開始


1回目のデプロイ

サーバへのデプロイは、「Deploy to Server」というメニューから行います。

まずなにも考えずにプロジェクトのルート上で右クリックして、「Deploy to Server」を実行。

画面に沿って進めます。

2017-12-18_17h25_07.png

「Destination archive」のチェックは外しました。

2017-12-18_08h53_57.png

2017-12-18_08h54_19.png

2017-12-18_08h55_05.png

「次へ」を押下するとエラー

2017-12-18_09h04_10.png

package.xml のエラーが出てしまいました。ファイルの文字コードがおかしいようです。

ざっとファイルの文字コードを確認してみますが、UTF-8になっているように見えます。

Salesforce のサイトを見ると、解決策がでていたので、それで対応します。

Force.com IDEのデプロイ時にエラー発生


2回目のデプロイ

1回目と同じ手順を踏んで、デプロイを進めます。

デプロイ失敗しますが、エラー内容は変わっています。(画像取得洩れ)

エラー内容を見て、一度にすべてのデプロイは難しいと判断して、少しずつデプロイすることにしました。


n回目のデプロイ

まず カスタムオブジェクト をデプロイします。

デプロイ成功です!ものすごくうれしい。

2017-12-18_16h17_23.png

Visualforce Page や Apex Class は依存しあっていることが多いので、小分けにして少しずつデプロイしていきます。

ここからは、デプロイ失敗時のログをみながら進めていきます。


試行錯誤の結果、

カスタムオブジェクト → 静的リソース → Apex Class, Trigger, tab → テストクラス → レポート, ダッシュボード → アプリケーション

という順番でデプロイしていくのがよさそうです。

以下はデプロイが成功したクラスです。

2017-12-18_18h07_53.png

API バージョンが低いので、最終的にはここもバージョンアップしますが、今回はここまで。

デプロイの試行錯誤に時間がかかりすぎました。

時間を見つけてこの記事は成長させていけたらなと思います。