10
Help us understand the problem. What are the problem?

More than 3 years have passed since last update.

posted at

SalesforceのデータローダーがZulu OpenJDK 11でリリース

概要

Salesforceのデータローダーは、これまでOracle Java 8でビルドされていましたが、Ver.45のリリースで「Zulu OpenJDK 11」でビルドされるようになりました。下記のGitHubで公開されているので、早速導入してみました。
https://github.com/forcedotcom/dataloader/releases/tag/v45.0.0

Zuluとは
https://qiita.com/nowokay/items/edb5c5df4dbfc4a99ffb
ZuluはAzul Systemsが提供しているOpenJDKビルドです。Azul Systemsは OpenJDKのサポートを行う企業で元OracleのSimon Ritter氏が属している会社です。
CustomerにMicrosoftもあるので、たぶんMicrosoft Azureもzuluを使っているんではなかろうか。

手順

Dataloaderをダウンロード

https://github.com/forcedotcom/dataloader/releases/download/v45.0.0/dataloader_mac.zip
image.png
現時点では、まだdmgは公開されておらず、jarを直接実行して起動する必要があります。
Zuluを入れないで、Java 8で実行すると下記のエラーになります。

Error: A JNI error has occurred, please check your installation and try again
Exception in thread "main" java.lang.UnsupportedClassVersionError: com/salesforce/dataloader/process/DataLoaderRunner has been compiled by a more recent version of the Java Runtime (class file version 55.0), this version of the Java Runtime only recognizes class file versions up to 52.0
    at java.lang.ClassLoader.defineClass1(Native Method)
    at java.lang.ClassLoader.defineClass(ClassLoader.java:763)
    at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
    at java.net.URLClassLoader.defineClass(URLClassLoader.java:468)
    at java.net.URLClassLoader.access$100(URLClassLoader.java:74)
    at java.net.URLClassLoader$1.run(URLClassLoader.java:369)
    at java.net.URLClassLoader$1.run(URLClassLoader.java:363)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:362)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:349)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
    at sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:495)

Zulu Open JDKをインストール

https://www.azul.com/downloads/zulu
image.png
※Java 8の無料アップデートは、あと45日とのこと・・・

image.png

PATH(JAVA_HOME)をアップデート

Java 8のパスが設定されているはずなので、Zuluのパスでアップデートします。

export JAVA_HOME=/Library/Java/JavaVirtualMachines/<zulu_package>/Contents/Home/

コマンドから起動

Macである場合は、下記のコマンドからDataloaderを起動できます。

java -XstartOnFirstThread -jar target/dataloader-xx.0-uber.jar

image.png

まとめ

JDKが変わっただけで大きな変化はないと思いますが、本番での作業等を行う場合には念の為に早めに新しいバージョンに切り替えて実施した方がいいです。

Register as a new user and use Qiita more conveniently

  1. You can follow users and tags
  2. you can stock useful information
  3. You can make editorial suggestions for articles
What you can do with signing up
10
Help us understand the problem. What are the problem?