Я пытаюсь использовать Java 13 с Eclipse в Linux.Я пытаюсь создать «портативную» папку java + eclipse, которую можно перемещать между компьютерами.Я скачал и разархивировал Java 13 из https://www.oracle.com/technetwork/java/javase/downloads/jdk13-downloads-5672538.html
Eclipse из https://www.eclipse.org/downloads/download.php?file=/eclipse/downloads/drops4/S-4.13RC1-201908281800/eclipse-SDK-4.13RC1-linux-gtk-x86_64.tar.gz
и на рынке затмения я установил все части https://download.eclipse.org/eclipse/updates/4.13-P-builds
Я установил jdk в папку jdk13.В результате Eclipse может скомпилировать мой код Java13, но не запускать его.Когда я пытаюсь запустить, я получаю
[..]/EclipseJava13/jdk-13/bin/java: symbol lookup error: [..]/EclipseJava13/jdk-13/bin/java: undefined symbol: JLI_InitArgProcessing
Я могу без проблем скомпилировать и запустить Java13 из командной строки с помощью команд:
../../../jdk-13/bin/javac --release 13 --enable-preview main/Main.java ../../../jdk-13/bin/java --enable-preview main.Main
Если я вырезать и вставить * .class, сгенерированныйзатмение Я могу запустить их с помощью команды
../../../jdk-13/bin/java --enable-preview main.Main
без проблем.Таким образом, Eclipse распознает Java 13 и правильно компилирует код Java 13.
Но ... когда я пытаюсь запустить его изнутри, я получаю эту ошибку.Я не уверен, что делать дальше.
Хорошо, я обнаружил проблему.Сам Eclipse - это программа на Java.На моей машине также было запущено Java8 Eclipse с использованием Java8.Java8 предварительно загружал версию среды, содержащей символ JLI_InitArgProcessing в среде.Таким образом, когда Java 13 запускалась в той же среде, она пыталась повторно использовать кэшированную версию такой библиотеки.Если я начну затмение с использованием Java13, то проблем не будет.
Вам не нужно добавлять --release 13 с " Java 13 Поддержка Eclipse 2019-09 "
--release 13
Относится к Eclipse R-4.13-201909161045 / , которая имеет официальную поддержку Java
Релиз, в частности, включает следующие функции Java 13: JEP 354: выражения выражений(Предварительный просмотр) . JEP 355. Текстовые блоки (предварительный просмотр) .
Релиз, в частности, включает следующие функции Java 13:
См. " Wiki Java13 / Примеры".