【Salesforce】データローダバッチが起動しないSalesforce2019.10.15この前まで動いていたデータローダバッチが起動しない!という事象が起きました。なんとか自力で解決したのですが、備忘録として解決までのプロセスを書き留めておこうと思います。同じ事象に悩んでいて解決の糸口を探している人に対して始めに言っておくとするならば、環境変数を見直した方が良いです。ちなみに使用PCはWindows10です。はじまりこの前まで動いていたデータローダバッチが起動しない。コマンドプロンプトが一瞬で閉じてしまい、successログもerrorログも吐かれない。ちなみにデータローダをexeから起動すれば、普通に使える。2つのバージョンのデータローダが共存。片方を削除→ダメ思い当たるのが、先日最新バージョンのデータローダをPCに入れたということ(その時の最新バージョンが46)。動かなくなったデータローダバッチはバージョン43で動作推奨のため、今はVersion.43とVersion.46、2つのバージョンのデータローダが1つのPCに共存している状態ということです。その最新のデータローダ(Version.46)をインストールした際、今まではJavaが入っていれば良かったのですが、何やらzuluを入れろとのことで、とりあえずzuluを入れました。この辺が原因ではなかろうか。いうことで、Version.46のデータローダを削除。その時インストールしたzuluも削除。これで、現在PCにはVersion.43のみが入っている状態。これで動いてほしいな~とデータローダバッチを起動すると・・・ダメでした。ちなみにVersion.43の再インストールや再起動をしてみてもダメでした。しなくなったデータローダバッチは他人が作ったもの。自分でデータローダバッチ作ったことないんですよね・・・出来れば再インストールや再起動で解決したかったのですが、ここまできたら腹をくくってデータローダバッチの仕組みを理解しつつ解決の糸口を探すことに。データローダバッチはコマンドプロンプトからデータローダのインストール先フォルダ/bin/process.batにパラメータを渡して叩いているということが分かりました。installed.Zuluのインストール先フォルダにJREが無い・・・?だって、さっき消したもん。あれかな、JAVA_HOMEの設定かな?ということで環境変数のJAVA_HOMEを見てみると、仰る通りZuluのbinフォルダを指してました。最新のデータローダ(Version.46)を入れた時も、なんだかうまくいかなくて環境変数をいじっていたような・・・JAVA_HOMEを変えてみる→OKということで、データローダVersion.43を動かすために必要なJava1.8をJAVA_HOMEに設定。(x86)\Java\jre1.8.0_211\bin↑これは私の環境のJavaインストール先binフォルダです。これで解決!と思ったらデータローダバッチがまだ起動しない。指定されたパスが見つかりませんむむ、悪化しているような・・・。こんなエラー吐かれるとどこに問題があるか分かりません。-cp指定されたパスが見つかりませんうわ~マジか~、JAVA_HOMEってbinフォルダ含めなくていいのか~。最近Java触ってないから忘れてしまってました。いうことでJAVA_HOMEを下記のように書き換えたところ、無事データローダバッチを起動させることができました。(x86)\Java\jre1.8.0_211結論データローダバッチはJAVA_HOMEの設定が重要ところで今回はJAVA_HOMEをVersion.43で使う設定に寄せましたが、Version.46で使う場合はまた変えないといけないですよね。1つのPCに複数のデータローダを共存させることはできますが、データローダバッチを使う場合は注意が必要そうです。データローダのインストール先フォルダにあるprocess.batは編集できるので、JAVA_HOMEではなくて他の環境変数を参照するようにしてしまうとか、またはパスをベタ書きしてしてしまうとかすれば、イケるっちゃイケますが。いずれにせよ、データローダはローカル環境に依存するのでナイーブですね。スクラッチ開発をやっていた頃は当たり前の話なのですが、SalesforceのPaaS開発に慣れるとこういうのは非常に煩わしく感じます。それだけクラウド環境での開発が如何に効率的か改めて感じますね。追記ちなみにこの話をSF上級者に話したところ、CLiqというツールを使えばデータローダバッチにJavaも内包させることが出来るそうで、そうすれば今回のような問題を気にすることはないですね!今度やってみようと思います。コピーガワタリをフォローするガワタリガワタリ.com関連記事Salesforce【Visualforce+Apex】複数選択リストをチェックボックスで選択できるようにする。Visualforceにて複数選択リストをapex:inputFieldで実装すると、標準でこんな感じのUIになります。これが使いづらいという意見があったりします。個人的には別にそんなに使いづらいとは思わないのですが、チェ...Salesforce【Salesforce】パッケージのアップグレード。レポートの修正が反映されない。パッケージを作成して初回のインストールは想定通りに成功。時期を置いてレポートの修正依頼があったため、開発環境でレポートを修正してパッケージをアップロード。レポートの修正が反映されない。ように書くと、レコードの値を動的に設定することができます。下記のような感...Salesforce【Salesforce】リストビューで日付項目を本日で絞り込む。リストビューで日付項目を本日で絞り込みたい場合、どうすれば良いのか。分かってしまうと簡単な話なのですが、"今日"と書けば良いです。"本日"ではダメで、"今日"と書きます。色々なやり方があると思うので、いちサンプルです。親画面から子画面へは、URLにパラメータをくっつけて渡してます...Salesforce【Salesforce】レポートを月曜日~日曜日の週単位でグループ化するレポートを日付でグルーピングして週単位で表示する場合、下図のように日曜日~土曜日の単位でグルーピングされます。コメントをキャンセルメールアドレスが公開されることはありません。*サイト次回のコメントで使用するためブラウザーに自分の名前、メールアドレス、サイトを保存する。Google1ガワタリIT業界歴10年以上のシステム・エンジニア。現在はフリーランスやってます。【Visualforce】inputFieldを非活性にする(readonly、disabled)2020.01.29【Apex】文字列のバイト数をカウント。SJISで・・2020.01.27【Visualforce】csv出力で、出力ファイルにscriptが吐かれる。SfdcApp.Visualforce.viewstate.ViewstateSender.sendViewstate2020.01.27【Salesforce】レコードIDは15桁だと大文字、小文字を区別する。Server】sqlcmdが使えない。VBA】Excelマクロをアドイン化する方法。2019.06.172019.09.05【VBA】CSV読み込み。カンマを含む文字データをsplitで分割する。2019.07.282019.09.04【Salesforce】作成したカスタムオブジェクトのタブ表示ができない。カスタムタブの作成2019.05.052019.09.05【Apex+Visualforce】標準コントローラの拡張をやってみた。アクションの追加と上書き。Google1ガワタリIT業界歴10年以上のシステム・エンジニア。現在はフリーランスやってます。【Visualforce】inputFieldを非活性にする(readonly、disabled)2020.01.29【Apex】文字列のバイト数をカウント。SJISで・・2020.01.27【Visualforce】csv出力で、出力ファイルにscriptが吐かれる。SfdcApp.Visualforce.viewstate.ViewstateSender.sendViewstate2020.01.27【Salesforce】レコードIDは15桁だと大文字、小文字を区別する。Server】sqlcmdが使えない。VBA】Excelマクロをアドイン化する方法。2019.06.172019.09.05【VBA】CSV読み込み。カンマを含む文字データをsplitで分割する。2019.07.282019.09.04【Salesforce】作成したカスタムオブジェクトのタブ表示ができない。カスタムタブの作成2019.05.052019.09.05【Apex+Visualforce】標準コントローラの拡張をやってみた。アクションの追加と上書き。2019.05.082019.09.05タイトルとURLをコピーしました。