[JAVA] Salesforce Data Loader est disponible avec Zulu OpenJDK 11

Aperçu

Le chargeur de données Salesforce était auparavant construit avec Oracle Java 8, mais avec la version Ver.45, il est maintenant construit avec "** Zulu OpenJDK 11 **". Puisqu'il est publié sur le GitHub ci-dessous, je l'ai immédiatement présenté. https://github.com/forcedotcom/dataloader/releases/tag/v45.0.0

Qu'est-ce que Zulu? https://qiita.com/nowokay/items/edb5c5df4dbfc4a99ffb Zulu est une version OpenJDK fournie par Azul Systems. Azul Systems est une société qui prend en charge OpenJDK et appartient à l'ancien Oracle Simon Ritter. Puisque le client a également Microsoft, peut-être que Microsoft Azure utilise également zulu.

procédure

Télécharger Dataloader

https://github.com/forcedotcom/dataloader/releases/download/v45.0.0/dataloader_mac.zip image.png Pour le moment, dmg n'a pas encore été publié et vous devez exécuter le fichier jar directement pour le démarrer. Si vous l'exécutez sur Java 8 sans Zulu, vous obtiendrez l'erreur suivante.

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)

Installez Zulu Open JDK

https://www.azul.com/downloads/zulu image.png

image.png

Mettre à jour PATH (JAVA_HOME)

Le chemin Java 8 doit être défini, alors mettez à jour avec le chemin Zulu.

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

Commencer à partir de la commande

Si vous êtes sur un Mac, vous pouvez démarrer Dataloader à partir de la commande suivante.

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

image.png

Résumé

Je ne pense pas qu'il y aura de changements majeurs simplement parce que le JDK a changé, mais lorsque vous travaillez en production, il est préférable de passer à la nouvelle version le plus tôt possible au cas où.

Recommended Posts

Salesforce Data Loader est disponible avec Zulu OpenJDK 11
Installez Java 8 (OpenJDK: Zulu Community) sur macOS avec Homebrew
Installez OpenJDK 8 avec RPM
Utiliser la paire avec OpenJDK