Help us understand the problem. What is going on with this article?

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

More than 1 year has passed since last update.

概要

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

yhayashi30
このアカウントでの投稿は私個人の見解に基づくものです。
https://yhayashi30.org
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした