Mam Xubuntu 17.10. Próbowałem zainstalować Eclipse przez apt-get. Gdy próbowałem go uruchomić, wystąpił błąd
An error has occurred. See the log file
/home/jaakko/.eclipse/org.eclipse.platform_3.8_155965261/configuration/1510564798671.log.
Plik dziennika jest następujący:
!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)
Odkryłem, że ten problem występuje, jeśli używam Java 9, ale nie, jeśli używam Java 8.
Jak mogę zainstalować Eclipse na moim komputerze, aby uruchomić Javę 9?
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)
idefault-jdk 2:1.8-59ubuntu1
Odpowiedzi:
Ubuntu 18.04 i nowsze wersje
Pakiet Snap Eclipse z domyślnych repozytoriów Ubuntu jest idealny do programowania Java, ponieważ jest dołączony do środowiska programistycznego Java. Aby zainstalować, otwórz terminal i wpisz:
To polecenie zainstaluje najnowszą wersję Eclipse IDE Photon Release 4.8 dla programistów Java, która została zaktualizowana 8 dni temu. Eclipse Photon JDT obsługuje Javę 9 całkowicie:
Uwaga: Aby dodać nową wersję Java do Eclipse w 18.04 i późniejszych wersjach, na przykład openjdk-11-jdk, postępuj zgodnie z instrukcjami wymienionymi powyżej w krokach 1-9, zamień tylko ciąg
java-9-openjdk
na wersję Java, do której chcesz dodać Zainstalowane środowiska JRE .Ubuntu 17.10
Zainstalowałem Eclipse Oxygen (najnowszą wersję Eclipse) i openjdk-9-jdk, a Eclipse współpracuje z openjdk-9-jdk w tej wersji. Jeśli chcesz zachować openjdk-8-jdk jako domyślną wersję Java do użycia w nowym Eclipse Oxygen, możesz otworzyć Eclipse i dodać openjdk-9-jdk z Eclipse w następujący sposób.
Wybierz Okno -> Preferencje
W okienku po prawej stronie okna Preferencje kliknij czarny trójkąt po lewej stronie Java, aby go rozwinąć.
Kliknij dwukrotnie Zainstalowane środowiska JRE .
Kliknij Dodaj po lewej stronie okna preferencji, aby dodać nowe środowisko JRE.
Wybierz Standardową maszynę wirtualną i kliknij Dalej .
W polu JRE Home: typ pola
/usr/lib/jvm/java-9-openjdk-amd64
(lub i386 zamiast amd64 dla 32-bitowego środowiska Eclipse)W polu Nazwa JRE: typ pola
java-9-openjdk-amd64
(lub i386 zamiast amd64 dla 32-bitowego środowiska Eclipse)Kliknij przycisk Zastosuj .
Teraz w Zainstalowanych środowiskach JRE w kroku 3. możesz kliknąć pole wyboru po lewej stronie środowiska JRE na liście zainstalowanych środowisk JRE, aby wybrać je jako domyślne, a następnie kliknąć przycisk Zastosuj , aby zastosować zmianę w domyślnym zainstalowanym środowisku JRE.
Te same instrukcje nie działają dla domyślnej wersji Eclipse w Ubuntu 16.04.
źródło
Musisz zainstalować
openjdk-8-jre
:Następnie przejdź do wersji Jre-8:
sprawdź wersję Java:
rozpocząć zaćmienie
źródło