Вопрос Проблема с установкой Eclipse с Java 9 на Ubuntu


У меня Xubuntu 17.10. Я попытался установить Eclipse через apt-get. Когда я попытался запустить его, я получил ошибку

An error has occurred. See the log file
/home/jaakko/.eclipse/org.eclipse.platform_3.8_155965261/configuration/1510564798671.log.

Файл журнала следующий:

!SESSION 2017-11-13 11:19:57.077 -----------------------------------------------
eclipse.buildId=debbuild
java.version=9.0.1
java.vendor=Oracle Corporation
BootLoader constants: OS=linux, ARCH=x86_64, WS=gtk, NL=en_US
Command-line arguments:  -os linux -ws gtk -arch x86_64

!ENTRY org.eclipse.equinox.simpleconfigurator 4 0 2017-11-13 11:20:00.209
!MESSAGE FrameworkEvent ERROR
!STACK 0
org.osgi.framework.BundleException: The bundle "org.eclipse.equinox.simpleconfigurator_1.0.301.dist [1]" could not be resolved. Reason: Missing Constraint: Bundle-RequiredExecutionEnvironment: CDC-1.1/Foundation-1.1,J2SE-1.4
    at org.eclipse.osgi.framework.internal.core.AbstractBundle.getResolverError(AbstractBundle.java:1332)
    at org.eclipse.osgi.framework.internal.core.AbstractBundle.getResolutionFailureException(AbstractBundle.java:1316)
    at org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:323)
    at org.eclipse.osgi.framework.internal.core.AbstractBundle.resume(AbstractBundle.java:390)
    at org.eclipse.osgi.framework.internal.core.Framework.resumeBundle(Framework.java:1176)
    at org.eclipse.osgi.framework.internal.core.StartLevelManager.resumeBundles(StartLevelManager.java:559)
    at org.eclipse.osgi.framework.internal.core.StartLevelManager.resumeBundles(StartLevelManager.java:544)
    at org.eclipse.osgi.framework.internal.core.StartLevelManager.incFWSL(StartLevelManager.java:457)
    at org.eclipse.osgi.framework.internal.core.StartLevelManager.doSetStartLevel(StartLevelManager.java:243)
    at org.eclipse.osgi.framework.internal.core.StartLevelManager.dispatchEvent(StartLevelManager.java:438)
    at org.eclipse.osgi.framework.internal.core.StartLevelManager.dispatchEvent(StartLevelManager.java:1)
    at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230)
    at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:340)

!ENTRY org.eclipse.osgi 4 0 2017-11-13 11:20:00.222
!MESSAGE Bundle initial@reference:file:plugins/org.eclipse.equinox.simpleconfigurator_1.0.301.dist.jar was not resolved.

!ENTRY org.eclipse.osgi 2 0 2017-11-13 11:20:00.256
!MESSAGE One or more bundles are not resolved because the following root constraints are not resolved:
!SUBENTRY 1 org.eclipse.osgi 2 0 2017-11-13 11:20:00.256
!MESSAGE Bundle initial@reference:file:plugins/org.eclipse.equinox.simpleconfigurator_1.0.301.dist.jar was not resolved.
!SUBENTRY 2 org.eclipse.equinox.simpleconfigurator 2 0 2017-11-13 11:20:00.256
!MESSAGE Missing required capability Require-Capability: osgi.ee; filter="(|(&(osgi.ee=CDC/Foundation)(version=1.1))(&(osgi.ee=JavaSE)(version=1.4)))".

!ENTRY org.eclipse.osgi 2 0 2017-11-13 11:20:00.268
!MESSAGE The following is a complete list of bundles which are not resolved, see the prior log entry for the root cause if it exists:
!SUBENTRY 1 org.eclipse.osgi 2 0 2017-11-13 11:20:00.268
!MESSAGE Bundle org.eclipse.equinox.simpleconfigurator_1.0.301.dist [1] was not resolved.
!SUBENTRY 2 org.eclipse.equinox.simpleconfigurator 2 0 2017-11-13 11:20:00.268
!MESSAGE Missing required capability Require-Capability: osgi.ee; filter="(|(&(osgi.ee=CDC/Foundation)(version=1.1))(&(osgi.ee=JavaSE)(version=1.4)))".

!ENTRY org.eclipse.osgi 4 0 2017-11-13 11:20:00.281
!MESSAGE Application error
!STACK 1
java.lang.IllegalStateException: Unable to acquire application service. Ensure that the org.eclipse.core.runtime bundle is resolved and started (see config.ini).
    at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:74)
    at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:353)
    at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:180)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.base/java.lang.reflect.Method.invoke(Method.java:564)
    at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:629)
    at org.eclipse.equinox.launcher.Main.basicRun(Main.java:584)
    at org.eclipse.equinox.launcher.Main.run(Main.java:1438)
    at org.eclipse.equinox.launcher.Main.main(Main.java:1414)

Я обнаружил, что эта проблема возникает, если я использую Java 9, но не если я использую Java 8.

Как установить Eclipse на мой компьютер для запуска Java 9?


2
2017-11-13 09:26


происхождения


Убедитесь, что JDK установлен в вашей системе перед установкой eclipse. - g_p
Я установил Java: java version "9.0.1" Java(TM) SE Runtime Environment (build 9.0.1+11) Java HotSpot(TM) 64-Bit Server VM (build 9.0.1+11, mixed mode) а также default-jdk 2:1.8-59ubuntu1 - Jaakko Seppälä
проверить эта почта - g_p
Какой выпуск Eclipse? Вам нужна версия Oxygen.1a (4.7.1a) для Java 9. - greg-449
У меня была такая же проблема с Eclipse neon и openjdk 9, эта работа сработала. - g_p


ответы:


Я установил Eclipse Oxygen (последняя версия Eclipse) и openjdk-9-jdk, а Eclipse работает с openjdk-9-jdk в этой версии. Если вы хотите сохранить openjdk-8-jdk в качестве версии Java по умолчанию для использования в новом Eclipse Oxygen, вы можете открыть Eclipse и добавить openjdk-9-jdk из Eclipse следующим образом.

  1. Выбрать Окно -> предпочтения

  2. На панели справа от окна «Настройки» щелкните черный треугольник слева от Ява развернуть его.

  3. Двойной клик Установленные JRE,

  4. Нажмите Добавить в левой части окна настроек, чтобы добавить новую JRE.

  5. Выбрать Стандартная ВМ и нажмите следующий,

  6. В поле JRE Home: тип поля /usr/lib/jvm/java-9-openjdk-amd64 (или i386 вместо amd64 для 32-разрядного Eclipse)

  7. В поле типа JRE Name: java-9-openjdk-amd64 (или i386 вместо amd64 для 32-разрядного Eclipse)

  8. Нажмите Подать заявление кнопка.

  9. Сейчас в Установленные JRE на шаге 3. вы можете установить флажок слева от JRE в списке установленных JRE, чтобы выбрать его по умолчанию и нажать Подать заявление , чтобы применить изменение в установленной по умолчанию JRE.

Эти же инструкции не работают для версии Eclipse по умолчанию в Ubuntu 16.04.


Ubuntu 18.04 и более поздние версии

Компонент Eclipse snap из репозиториев Ubuntu по умолчанию идеально подходит для программирования на Java, поскольку он связан с средой разработки Java. Чтобы установить его, откройте терминал и введите:

sudo snap install eclipse --classic  

Эта команда установит последнюю версию Eclipse IDE версии 4.8 для разработчиков Java, которая была обновлена ​​8 дней назад. Eclipse Photon JDT полностью поддерживает Java 9:

  • Компилятор Eclipse для Java (ECJ) реализует все новые улучшения языка Java 9.
  • Обновлены важные функции для поддержки Java-модулей, таких как компилятор, поиск и многие функции редактора.

Заметка: Чтобы добавить новую версию Java в Eclipse в 18.04 и позже, например openjdk-11-jdk, следуйте инструкциям, перечисленным выше в шагах 1-9, замените строку только java-9-openjdk с версией java, которую вы хотите добавить в Установленные JRE,


1
2017-12-23 13:27





  1. Вы должны установить openjdk-8-jre:

    sudo apt-get install openjdk-8-jre
    
  2. Затем переключитесь на версию jre-8:

    $ sudo update-alternatives --config java
    There are 2 choices for the alternative java (providing /usr/bin/java).
    
    Selection    Path                                            Priority   Status
    
    * 0            /usr/lib/jvm/java-9-openjdk-amd64/bin/java       1091      auto mode
      1            /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java   1081      manual mode
      2            /usr/lib/jvm/java-9-openjdk-amd64/bin/java       1091      manual mode
    
  3. проверьте версию java:

    $ java -version
    openjdk version "1.8.0_151"
    OpenJDK Runtime Environment (build 1.8.0_151-8u151-b12-0ubuntu0.17.10.2-b12)
    OpenJDK 64-Bit Server VM (build 25.151-b12, mixed mode)
    
  4. начать затмение


2
2017-12-23 11:16



этот работал для меня - Satya Arjunan