Equinox start error (console bundle is missed)

2019-01-14 13:51发布

java.version=1.6.0_10
java.vendor=Sun Microsystems Inc.
BootLoader constants: OS=win32, ARCH=x86, WS=win32, NL=en_US
 Command-line arguments:  -console -configuration runtime

ENTRY org.eclipse.osgi 4 0 2012-03-28 15:50:09.721
 !MESSAGE Could not find bundle: org.eclipse.equinox.console
!STACK 0`enter code here`
org.osgi.framework.BundleException: Could not find bundle: org.eclipse.equinox.console
at          org.eclipse.osgi.framework.internal.core.ConsoleManager.checkForConsoleBundle(ConsoleManager.java:211)
at org.eclipse.core.runtime.adaptor.EclipseStarter.startup(EclipseStarter.java:297)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:176)
at org.eclipse.core.runtime.adaptor.EclipseStarter.main(EclipseStarter.java:151)

!ENTRY org.eclipse.osgi 4 0 2012-03-28 15:50:09.737
!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 org.eclipse.core.runtime.adaptor.EclipseStarter.main(EclipseStarter.java:151)

标签: osgi equinox
5条回答
来,给爷笑一个
2楼-- · 2019-01-14 14:18

This link provides all the details regarding the new console which is based on Apache Felix Gogo shell: http://help.eclipse.org/juno/index.jsp?topic=%2Forg.eclipse.platform.doc.isv%2Fguide%2Fconsole_shell.htm

In short steps are:

  1. Place the necessary bundles in a folder. The bundles are:

    • org.apache.felix.gogo.command_0.8.0v<version>.jar
    • org.apache.felix.gogo.runtime_0.8.0v<version>.jar
    • org.apache.felix.gogo.shell_0.8.0v<version>.jar
    • org.eclipse.equinox.console_1.0.0v<version>.jar
    • org.eclipse.osgi.jar
  2. Create a configuration subfolder put a new config.ini file in it with the following content:

    osgi.bundles=./org.apache.felix.gogo.runtime_0.8.0v<version>.jar@start,\
    ./org.apache.felix.gogo.command_0.8.0v<version>.jar@start,\
    ./org.apache.felix.gogo.shell_0.8.0v<version>.jar@start,\
    ./org.eclipse.equinox.console.jar@start,\
    osgi.console.enable.builtin=false
    osgi.console=<port> 
    
  3. Start the Equinox framework with this command:

    java -jar org.eclipse.osgi.jar
    
查看更多
Root(大扎)
3楼-- · 2019-01-14 14:22

Necessary bundles are missing. Add them in run as->run configurations->osgi framework->bundles Add following bundles along with your own bundles and delete others: org.apache.felix.gogo.command_0.8.0.v201108120515.jar

org.apache.felix.gogo.runtime_0.8.0.v201108120515.jar

org.apache.felix.gogo.shell_0.8.0.v201110170705.jar

org.eclipse.equinox.console_1.0.0.v20111215-1210.jar

then click apply and run.

查看更多
一纸荒年 Trace。
4楼-- · 2019-01-14 14:34
  • Go to META-INF/MANIFEST.MF

  • Right click Run As/Run Configuration/RAP Application/(Select entry point under this tree node)

  • Select Tab Bundles/

  • Check org.apache.felix.gogo.command , org.apache.felix.gogo.runtime , org.apache.felix.gogo.shell , org.eclipse.equinox.console

  • Click Add requered Bundles

  • Click Validate Bundles ==> No Problem was detected

  • Apply.

Now run ok.

查看更多
beautiful°
5楼-- · 2019-01-14 14:35

Console functionality was removed from Equinox system bundle. Now it should be installed explicitly (felix gogo console).

Download Equinox SDK and copy such files to your equinox plugin folder:

org.apache.felix.gogo.command_0.8.0.v201108120515.jar org.apache.felix.gogo.runtime_0.8.0.v201108120515.jar org.apache.felix.gogo.shell_0.8.0.v201110170705.jar org.eclipse.equinox.console_1.0.0.v20111215-1210.jar

update your config.ini in configuration folder and add such substring to property osgi.bundles

reference:file:org.eclipse.equinox.console_1.0.0.v20111215-1210.jar@4,reference:file:org.apache.felix.gogo.shell_0.8.0.v201110170705.jar@4,reference:file:org.apache.felix.gogo.runtime_0.8.0.v201108120515.jar@4,reference:file:org.apache.felix.gogo.command_0.8.0.v201108120515.jar@4,

查看更多
迷人小祖宗
6楼-- · 2019-01-14 14:42

In the above config.ini osgi.console.enable.builtin=false must NOT be on the same line with the osgi.bundles property. The official documentation seems to have this wrong too.

My config.ini looks like:

osgi.bundles=./org.apache.felix.gogo.runtime_0.10.0.v201209301036.jar@start,\
./org.apache.felix.gogo.command_0.10.0.v201209301215.jar@start,\
./org.apache.felix.gogo.shell_0.10.0.v201212101605.jar@start,\
./org.eclipse.equinox.console.jar@start
osgi.console.enable.builtin=false
osgi.console=4711
查看更多
登录 后发表回答