I have Xubuntu 17.10. I tried to install Eclipse via apt-get. When I tried to run it, I got an error

An error has occurred. See the log file

The log file is the following:

!SESSION 2017-11-13 11:19:57.077 -----------------------------------------------
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
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
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)

I found this problem occurs if I use Java 9 but not if I use Java 8.

How can I install Eclipse to my computer to run Java 9?

  • Make sure JDK is installed on your system before installing eclipse. – g_p Nov 13 '17 at 9:36
  • I have installed 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) and default-jdk 2:1.8-59ubuntu1 – Jaakko Seppälä Nov 13 '17 at 9:39
  • check this post – g_p Nov 13 '17 at 9:45
  • What release of Eclipse? You need the Oxygen.1a (4.7.1a) release for Java 9. – greg-449 Nov 14 '17 at 8:29
  • 1
    I had same issue with Eclipse neon and openjdk 9,this one worked. – g_p Nov 17 '17 at 20:41

Ubuntu 18.04 and later

The Eclipse snap package from the default Ubuntu repositories is perfect for Java programming because it is bundled with a Java development environment. To install it open the terminal and type:

sudo snap install eclipse --classic  

This command will install the latest Photon Release 4.8 version of Eclipse IDE for Java Developers which was updated 8 days ago. Eclipse Photon JDT supports Java 9 completely:

  • The Eclipse compiler for Java (ECJ) implements all the new Java 9 language enhancements.
  • Updated significant features to support Java Modules, such as compiler, search and many editor features.

Note: In order to add a new Java version to Eclipse in 18.04 and later, for example openjdk-11-jdk, follow the instructions listed above in steps 1-9, only replace the string java-9-openjdk with the java version that you want to add to Installed JREs.

Ubuntu 17.10

I have installed Eclipse Oxygen (the latest version of Eclipse) and openjdk-9-jdk and Eclipse is working with openjdk-9-jdk in this version. If you want to keep openjdk-8-jdk as the default Java version to use in your new Eclipse Oxygen, you can open Eclipse and add openjdk-9-jdk from inside Eclipse as follows.

  1. Select Window -> Preferences

  2. In the pane on the right side of the Preferences window, click the black triangle to the left of Java to unfold it.

  3. Double-click Installed JREs.

  4. Click the Add on the left side of the preferences window to add a new JRE.

  5. Select Standard VM and click Next.

  6. In the JRE Home: field type /usr/lib/jvm/java-9-openjdk-amd64 (or i386 instead of amd64 for 32-bit Eclipse)

  7. In the JRE Name: field type java-9-openjdk-amd64 (or i386 instead of amd64 for 32-bit Eclipse)

  8. Click the Apply button.

  9. Now in Installed JREs in Step 3. you can click the checkbox to the left of a JRE in the list of installed JREs to select it as the default and click the Apply button to apply the change in the default Installed JRE.

The same instructions do not work for the default version of Eclipse in Ubuntu 16.04.

  1. You have to install the openjdk-8-jre:

    sudo apt-get install openjdk-8-jre
  2. Next switch to the jre-8 version:

    $ 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. check java version:

    $ 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. start eclipse

  • 1
    this one worked for me – Satya Arjunan Mar 16 '18 at 11:41

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.