Neon: how to run on jdk9?

后端 未结 11 1155
后悔当初
后悔当初 2020-11-27 07:00

Just started playing with jdk9 - and kind-of stuck right at the beginning:

  • downloaded and extracted eclipse-java-neon-m4a-win32
  • installed java 9 supp
相关标签:
11条回答
  • 2020-11-27 07:14

    Whoever is facing the same Eclipse crash issue with the Java 11, none of the above solutions seem to work.

    Here is the error:

    org.eclipse.e4.core.di.InjectionException: java.lang.NoClassDefFoundError: javax/annotation/PostConstruct
    

    As mentioned here https://bugs.eclipse.org/bugs/show_bug.cgi?id=533390, this issue is fixed with the Eclipse Photon 4.8.

    Here is the workaround mentioned https://bugs.eclipse.org/bugs/show_bug.cgi?id=533390#c22. However, this just a short-term workaround so it's better to update the eclipse to 4.8

    Steps:

    1. Go to eclipse config.ini file, which you find here /Applications/Eclipse_4.7.2 .app/Contents/Eclipse/configuration/config.ini
    2. Add the below content

    .

    org.osgi.framework.system.packages = \
     javax.accessibility,\
     javax.activation,\
     javax.activity,\
     javax.crypto,\
     javax.crypto.interfaces,\
     javax.crypto.spec,\
     javax.imageio,\
     javax.imageio.event,\
     javax.imageio.metadata,\
     javax.imageio.plugins.bmp,\
     javax.imageio.plugins.jpeg,\
     javax.imageio.spi,\
     javax.imageio.stream,\
     javax.jws,\
     javax.jws.soap,\
     javax.lang.model,\
     javax.lang.model.element,\
     javax.lang.model.type,\
     javax.lang.model.util,\
     javax.management,\
     javax.management.loading,\
     javax.management.modelmbean,\
     javax.management.monitor,\
     javax.management.openmbean,\
     javax.management.relation,\
     javax.management.remote,\
     javax.management.remote.rmi,\
     javax.management.timer,\
     javax.naming,\
     javax.naming.directory,\
     javax.naming.event,\
     javax.naming.ldap,\
     javax.naming.spi,\
     javax.net,\
     javax.net.ssl,\
     javax.print,\
     javax.print.attribute,\
     javax.print.attribute.standard,\
     javax.print.event,\
     javax.rmi,\
     javax.rmi.CORBA,\
     javax.rmi.ssl,\
     javax.script,\
     javax.security.auth,\
     javax.security.auth.callback,\
     javax.security.auth.kerberos,\
     javax.security.auth.login,\
     javax.security.auth.spi,\
     javax.security.auth.x500,\
     javax.security.cert,\
     javax.security.sasl,\
     javax.sound.midi,\
     javax.sound.midi.spi,\
     javax.sound.sampled,\
     javax.sound.sampled.spi,\
     javax.sql,\
     javax.sql.rowset,\
     javax.sql.rowset.serial,\
     javax.sql.rowset.spi,\
     javax.swing,\
     javax.swing.border,\
     javax.swing.colorchooser,\
     javax.swing.event,\
     javax.swing.filechooser,\
     javax.swing.plaf,\
     javax.swing.plaf.basic,\
     javax.swing.plaf.metal,\
     javax.swing.plaf.multi,\
     javax.swing.plaf.nimbus,\
     javax.swing.plaf.synth,\
     javax.swing.table,\
     javax.swing.text,\
     javax.swing.text.html,\
     javax.swing.text.html.parser,\
     javax.swing.text.rtf,\
     javax.swing.tree,\
     javax.swing.undo,\
     javax.tools,\
     javax.xml,\
     javax.xml.bind,\
     javax.xml.bind.annotation,\
     javax.xml.bind.annotation.adapters,\
     javax.xml.bind.attachment,\
     javax.xml.bind.helpers,\
     javax.xml.bind.util,\
     javax.xml.crypto,\
     javax.xml.crypto.dom,\
     javax.xml.crypto.dsig,\
     javax.xml.crypto.dsig.dom,\
     javax.xml.crypto.dsig.keyinfo,\
     javax.xml.crypto.dsig.spec,\
     javax.xml.datatype,\
     javax.xml.namespace,\
     javax.xml.parsers,\
     javax.xml.soap,\
     javax.xml.stream,\
     javax.xml.stream.events,\
     javax.xml.stream.util,\
     javax.xml.transform,\
     javax.xml.transform.dom,\
     javax.xml.transform.sax,\
     javax.xml.transform.stax,\
     javax.xml.transform.stream,\
     javax.xml.validation,\
     javax.xml.ws,\
     javax.xml.ws.handler,\
     javax.xml.ws.handler.soap,\
     javax.xml.ws.http,\
     javax.xml.ws.soap,\
     javax.xml.ws.spi,\
     javax.xml.ws.spi.http,\
     javax.xml.ws.wsaddressing,\
     javax.xml.xpath,\
     org.ietf.jgss,\
     org.omg.CORBA,\
     org.omg.CORBA_2_3,\
     org.omg.CORBA_2_3.portable,\
     org.omg.CORBA.DynAnyPackage,\
     org.omg.CORBA.ORBPackage,\
     org.omg.CORBA.portable,\
     org.omg.CORBA.TypeCodePackage,\
     org.omg.CosNaming,\
     org.omg.CosNaming.NamingContextExtPackage,\
     org.omg.CosNaming.NamingContextPackage,\
     org.omg.Dynamic,\
     org.omg.DynamicAny,\
     org.omg.DynamicAny.DynAnyFactoryPackage,\
     org.omg.DynamicAny.DynAnyPackage,\
     org.omg.IOP,\
     org.omg.IOP.CodecFactoryPackage,\
     org.omg.IOP.CodecPackage,\
     org.omg.Messaging,\
     org.omg.PortableInterceptor,\
     org.omg.PortableInterceptor.ORBInitInfoPackage,\
     org.omg.PortableServer,\
     org.omg.PortableServer.CurrentPackage,\
     org.omg.PortableServer.POAManagerPackage,\
     org.omg.PortableServer.POAPackage,\
     org.omg.PortableServer.portable,\
     org.omg.PortableServer.ServantLocatorPackage,\
     org.omg.SendingContext,\
     org.omg.stub.java.rmi,\
     org.w3c.dom,\
     org.w3c.dom.bootstrap,\
     org.w3c.dom.css,\
     org.w3c.dom.events,\
     org.w3c.dom.html,\
     org.w3c.dom.ls,\
     org.w3c.dom.ranges,\
     org.w3c.dom.stylesheets,\
     org.w3c.dom.traversal,\
     org.w3c.dom.views,\
     org.w3c.dom.xpath,\
     org.xml.sax,\
     org.xml.sax.ext,\
     org.xml.sax.helpers
    
    0 讨论(0)
  • 2020-11-27 07:19

    Add the following line at the end of eclipse.ini

    --add-modules=java.se.ee
    
    0 讨论(0)
  • 2020-11-27 07:21

    I have the same error I find solution from Configure Eclipse for Java 9

    Following edit you have to do in eclipse.ini file

    1. -vm C:\Program Files\Java\jdk-9\bin\javaw.exe
    2. --add-modules=ALL-SYSTEM

    And It will solve your problem. Your eclipse.ini file look like following:

    --launcher.appendVmargs
    -vm
    C:\Program Files\Java\jdk-9\bin\javaw.exe
    -vmargs
    -Dosgi.requiredJavaVersion=1.8
    --add-modules=ALL-SYSTEM
    
    0 讨论(0)
  • 2020-11-27 07:25

    To get rid of the java.lang.ClassNotFoundException: javax.annotation.PostConstruct issue, try adding the following line under -vmargs in your eclipse.ini:

    -Djdk.launcher.addmods=java.annotations.common
    

    (Will change to --add-modules=java.annotations.common in JDK 9 EA build 132)

    See https://bugs.eclipse.org/bugs/show_bug.cgi?id=493761

    UPDATE: Since this answer, more things changed, I am currently running Eclipse with JDK 9 b177 and these added vmargs: --add-modules=java.xml.bind,java.xml.ws.annotation

    0 讨论(0)
  • 2020-11-27 07:26

    I had the same issue. The NoClassDefFoundError shows when you select to build/compile your project with Java 9 JDK. Eclipse is unable to find a required jar file in root JDK folder, so it fails to start completely. After installing the Java 9 support plugin from the marketplace you may be able to start Eclipse, but still you will see a lot of errors and won't be able to compile a single project. The solution (for now) is to switch to Java 9 JRE in "Installed JREs" under "Project Preferences". This fixed everything for me

    Taken from here, you may want to read the full article for more instructions

    0 讨论(0)
提交回复
热议问题