以前使われていた「Force.com IDE」のサポートが公式に終了することになったり、MavensMateも開発終了ということで、「Salesforceで開発を行うときにはどのIDE(統合開発環境)を使えばいいのか?」と悩んでいる方も多いと思います。
また、Salesforceの開発手法もDXといわれる形式に徐々に変わってきていますし、近い将来も見据えて、IDEの選択を行いたいところですよね。
VS Codeは使い勝手はどうか?
最近いろいろな開発環境の中で使いやすく、カスタマイズしやすいと評判なのがVisualStudioCodeです。
また、今後、Salesforceでの開発がDX形式になっていくにあたり、重要なツールとなるのがSalesforceCLIですね。
VSCodeには、このCLIとの連携がスムーズにできる公式の機能拡張がSalaesForce社からリリースされており、今後、統合開発環境の主流はVSCodeに移っていくのではないかと思います。
そこで今回はVisualStudioCodeを使ってSalesforceの開発を行うための環境構築の手順をまとめてみました。
インストールと環境設定
SalesforceCLIのインストール
VSCodeでは、Salesforce開発に必要なさまざまな作業を、SalesforceCLIを使ったコマンド経由で行いますので、SalesforceCLIのインストールが必須です。
始めにこれをインストールしておきましょう。
ここからダウンロードできます。
jdk8のインストール
いくつかのVSCode機能拡張の機能はJSDK8を使いますので、インストールしておきましょう。
もし、お使いの環境に複数のjdkのバージョンが混在している場合は、VSCodeのユーザ設定の
「salesforcedx-vscode-apex.java.home」にJava8をインストールしたディレクトリを指定しておきます。
VSCodeのインストールとセットアップ
もちろんVSCodeをインストールしておく必要があります。
機能拡張はVSCodeのv1.26以上が対象なので、このバージョン以上のVSCodeをインストールしておきます。
さて、開発にあたり、いくつか、セットアップしておいた方がいい機能拡張と設定がありますので、以下に記載します。
公式機能拡張のインストール
https://forcedotcom.github.io/salesforcedx-vscode/
VSCodeでSalesforce開発をするなら必須の公式機能拡張です。
DevHubやスクラッチ組織にアクセスする機能もありますので、インストールします。
package.xmlジェネレータのインストール
https://marketplace.visualstudio.com/items?itemName=VignaeshRamA.sfdx-package-xml-generator
これは公式の機能拡張ではありませんが、既存のSalesforce組織からpackage.xmlを生成します。
このpackage.xmlの情報をもとに、Salesforcec側にあるApexソースやトリガ、レイアウトなどをローカルのPCに取得して開発を行いますので、あると便利です。
プロキシ背後で開発する場合
開発するところがproxyの背後にある場合は、プロキシの設定を行います。
特に、VSCodeのコマンドパレットやターミナルからSFDCへのログイン系のコマンドを打ちこんだ時、「localhost」にコールバックするのですが、この設定がないとエラーになってログインできません。
設定はWindowsのシステム環境変数に以下を設定し、PC再起動でOKです。
HTTP_PROXY・・・<サーバ>:<ポート>
HTTPS_PROXY・・・<サーバ>:<ポート>
VSCodeでのプロジェクトの作り方
新規に、既存のSFDC組織用プロジェクトを作成
VSCodeのコマンドパレットを開き、テキストボックスに「Create Project」と入力し「SFDX: Create Project with Manifest」を選択。
すると、プロジェクトフォルダが生成され、もろもろのファイルも生成されます。
とくに、「manifest/package.xml」も自動で生成されます。
ただし、package.xmlの中にはそれほど多くのコンポーネントの記述はないので、次の手順で適宜追加します。
VSCodeのTerminalを開いて、既存組織にログインする。
以下のコマンドをVSCodeのターミナルから入力し、SFDCにログインします。
sfdx force:auth:web:login --setalias <組織のエイリアス名> \
</ br>--instanceurl https://login.salesforce.com --setdefaultusername
「SFDX Package.xml Generator」でpackage.xml情報を取得
コマンドパレットを開き、テキストボックスに「SFDX Package.xml Generator」と入力し「SFDX Package.xml Generator: Choose Metadata Components」を選択します。
すると、どのコンポーネントを取得するかの選択画面が表示されるので、チェックボックスで選択します。
すると、package.xmlに選択したコンポーネントの情報がアップデートされます。
ちなみにこの時点ではまだ、コンポーネント自体はダウンロードされていませんので、次の手順でコンポーネントをローカルPCにダウンロードします。
コンポーネントを取得
package.xmlを右クリックし、「SFDC: Retrieve Source in Manifest from Org」を選んでコンポーネントを取得します。