Note: This is a beta release of Red Hat Bugzilla 5.0. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Also email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback here.
Bug 154816 - eclipse fails to start with NoClassDefFoundError
Summary: eclipse fails to start with NoClassDefFoundError
Keywords:
Status: CLOSED WONTFIX
Alias: None
Product: Fedora
Classification: Fedora
Component: eclipse
Version: 4
Hardware: x86_64
OS: Linux
medium
medium
Target Milestone: ---
Assignee: eclipse-bugs
QA Contact:
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2005-04-14 13:04 UTC by Andrey Petrov
Modified: 2007-11-30 22:11 UTC (History)
0 users

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2005-04-26 20:25:34 UTC


Attachments (Terms of Use)
output of /usr/bin/gcj-dbtool -l /usr/lib64/gcj-4.0.0/classmap.db (deleted)
2005-04-14 13:04 UTC, Andrey Petrov
no flags Details

Description Andrey Petrov 2005-04-14 13:04:37 UTC
Description of problem:
eclipse fails to launch and it advises to take a look at
/home/username/workspace/.metadata/.log where the following stacktrace may be found:
!SESSION 2005-04-14 15:58:00.396 -----------------------------------------------
eclipse.buildId=I20050219-1500
java.fullversion=GNU libgcj 4.0.0 20050405 (Red Hat 4.0.0-0.40)
BootLoader constants: OS=linux, ARCH=x86_64, WS=gtk, NL=en_US
Command-line arguments:  -os linux -ws gtk -arch x86_64 -data /home/andrew/workspace

!ENTRY org.eclipse.osgi 2005-04-14 15:58:00.397
!MESSAGE Application error
!STACK 1
java.lang.NoClassDefFoundError: while resolving class: org.eclipse.swt.graphics.GC
   at java.lang.VMClassLoader.transformException(java.lang.Class,
java.lang.Throwable) (/usr/lib64/libgcj.so.6.0.0)
   at java.lang.VMClassLoader.resolveClass(java.lang.Class)
(/usr/lib64/libgcj.so.6.0.0)
   at java.lang.Class.initializeClass() (/usr/lib64/libgcj.so.6.0.0)
   at org.eclipse.swt.widgets.CoolItem.createArrowImage(int, int) (Unknown Source)
   at org.eclipse.swt.widgets.CoolItem.updateChevron() (Unknown Source)
   at org.eclipse.swt.widgets.CoolItem.setBounds(int, int, int, int) (Unknown
Source)
   at org.eclipse.swt.widgets.CoolBar.layoutItems() (Unknown Source)
   at org.eclipse.swt.widgets.CoolBar.relayout() (Unknown Source)
   at org.eclipse.swt.widgets.CoolItem.setSize(int, int) (Unknown Source)
   at org.eclipse.swt.widgets.CoolItem.setSize(org.eclipse.swt.graphics.Point)
(Unknown Source)
   at org.eclipse.jface.action.ToolBarContributionItem.updateSize(boolean)
(Unknown Source)
   at
org.eclipse.jface.action.ToolBarContributionItem.fill(org.eclipse.swt.widgets.CoolBar,
int) (Unknown Source)
   at org.eclipse.jface.action.CoolBarManager.update(boolean) (Unknown Source)
   at
org.eclipse.jface.action.CoolBarManager.createControl(org.eclipse.swt.widgets.Composite)
(Unknown Source)
   at
org.eclipse.jface.window.ApplicationWindow.createCoolBarControl(org.eclipse.swt.widgets.Composite)
(Unknown Source)
   at
org.eclipse.ui.internal.WorkbenchWindow.createDefaultContents(org.eclipse.swt.widgets.Shell)
(Unknown Source)
   at
org.eclipse.ui.internal.WorkbenchWindowConfigurer.createDefaultContents(org.eclipse.swt.widgets.Shell)
(Unknown Source)
   at
org.eclipse.ui.application.WorkbenchWindowAdvisor.createWindowContents(org.eclipse.swt.widgets.Shell)
(Unknown Source)
   at
org.eclipse.ui.internal.WorkbenchWindow.createContents(org.eclipse.swt.widgets.Composite)
(Unknown Source)
   at org.eclipse.jface.window.Window.create() (Unknown Source)
Caused by: java.lang.ClassNotFoundException:
org.eclipse.swt.internal.cairo.cairo_font_extents_t
   at
org.eclipse.osgi.framework.internal.core.BundleLoader.findClass(java.lang.String)
(Unknown Source)
   at
org.eclipse.osgi.framework.adaptor.core.AbstractClassLoader.loadClass(java.lang.String,
boolean) (Unknown Source)
   at java.lang.Class.forName(java.lang.String, boolean, java.lang.ClassLoader)
(/usr/lib64/libgcj.so.6.0.0)
   at java.lang.VMClassLoader.resolveClass(java.lang.Class)
(/usr/lib64/libgcj.so.6.0.0)
   at java.lang.Class.initializeClass() (/usr/lib64/libgcj.so.6.0.0)
   at org.eclipse.swt.widgets.CoolItem.createArrowImage(int, int) (Unknown Source)
   at org.eclipse.swt.widgets.CoolItem.updateChevron() (Unknown Source)
   at org.eclipse.swt.widgets.CoolItem.setBounds(int, int, int, int) (Unknown
Source)
   at org.eclipse.swt.widgets.CoolBar.layoutItems() (Unknown Source)
   at org.eclipse.swt.widgets.CoolBar.relayout() (Unknown Source)
   at org.eclipse.swt.widgets.CoolItem.setSize(int, int) (Unknown Source)
   at org.eclipse.swt.widgets.CoolItem.setSize(org.eclipse.swt.graphics.Point)
(Unknown Source)
   at org.eclipse.jface.action.ToolBarContributionItem.updateSize(boolean)
(Unknown Source)
   at
org.eclipse.jface.action.ToolBarContributionItem.fill(org.eclipse.swt.widgets.CoolBar,
int) (Unknown Source)
   at org.eclipse.jface.action.CoolBarManager.update(boolean) (Unknown Source)
   at
org.eclipse.jface.action.CoolBarManager.createControl(org.eclipse.swt.widgets.Composite)
(Unknown Source)
   at
org.eclipse.jface.window.ApplicationWindow.createCoolBarControl(org.eclipse.swt.widgets.Composite)
(Unknown Source)
   at
org.eclipse.ui.internal.WorkbenchWindow.createDefaultContents(org.eclipse.swt.widgets.Shell)
(Unknown Source)
   at
org.eclipse.ui.internal.WorkbenchWindowConfigurer.createDefaultContents(org.eclipse.swt.widgets.Shell)
(Unknown Source)


Version-Release number of selected component (if applicable):
I've tested builds 3.1.0_fc-0.M5.17 and 3.1.0_fc-0.M5.19 and both have the same
issue.

How reproducible:
Always

Steps to Reproduce:
1. install fc4test2
2. run /usr/bin/eclipse
  
Actual results:


Expected results:


Additional info:
the output of /usr/bin/gcj-dbtool -l /usr/lib64/gcj-4.0.0/classmap.db is
attached to this issue, see dbtool.out file (it does contain references to
swt-cairo.jar.so)

Comment 1 Andrey Petrov 2005-04-14 13:04:39 UTC
Created attachment 113144 [details]
output of /usr/bin/gcj-dbtool -l /usr/lib64/gcj-4.0.0/classmap.db

Comment 2 Andrey Petrov 2005-04-14 18:04:29 UTC
the official eclipse snapshot from eclipse.org runs fine with gcj (in
interpreted mode)
Help->About Eclipse Platform->Configuration Details
...
java.vm.vendor=Free Software Foundation, Inc.
java.vm.version=4.0.0 20050405 (Red Hat 4.0.0-0.40)
...

Comment 3 Andrew Overholt 2005-04-20 12:22:35 UTC
Can you please try the latest 3.1M6 packages and see if your issue persists?

Comment 4 Andrey Petrov 2005-04-20 18:52:07 UTC
The latest rawhide build eclipse-platform-3.1.0_fc-0.M6.7 boots fine.

I'm able to get to the main window though the welcome tab contains the following
stacktrace instead of its ordinary content:
java.lang.NullPointerException
   at java.lang.Object.getClass() (/usr/lib64/libgcj.so.6.0.0)
   at
org.eclipse.ui.internal.ViewIntroAdapterPart.createPartControl(org.eclipse.swt.widgets.Composite)
(Unknown Source)
   at
org.eclipse.ui.internal.ViewFactory.busyRestoreViewHelper(org.eclipse.ui.internal.ViewFactory$ViewReference)
(Unknown Source)
   at
org.eclipse.ui.internal.ViewFactory.busyRestoreView(org.eclipse.ui.IViewReference)
(Unknown Source)
   at org.eclipse.ui.internal.ViewFactory$1.run() (Unknown Source)
   at
org.eclipse.swt.custom.BusyIndicator.showWhile(org.eclipse.swt.widgets.Display,
java.lang.Runnable) (Unknown Source)
   at
org.eclipse.ui.internal.ViewFactory.restoreView(org.eclipse.ui.IViewReference)
(Unknown Source)
   at org.eclipse.ui.internal.Perspective.showView(java.lang.String,
java.lang.String) (Unknown Source)
   at org.eclipse.ui.internal.WorkbenchPage.busyShowView(java.lang.String,
java.lang.String, int) (Unknown Source)
   at
org.eclipse.ui.internal.WorkbenchPage.access$10(org.eclipse.ui.internal.WorkbenchPage,
java.lang.String, java.lang.String, int) (Unknown Source)
   at org.eclipse.ui.internal.WorkbenchPage$13.run() (Unknown Source)
   at
org.eclipse.swt.custom.BusyIndicator.showWhile(org.eclipse.swt.widgets.Display,
java.lang.Runnable) (Unknown Source)
   at org.eclipse.ui.internal.WorkbenchPage.showView(java.lang.String,
java.lang.String, int) (Unknown Source)
   at org.eclipse.ui.internal.WorkbenchPage.showView(java.lang.String) (Unknown
Source)
   at
org.eclipse.ui.internal.WorkbenchIntroManager.createIntro(org.eclipse.ui.IWorkbenchWindow)
(Unknown Source)
   at
org.eclipse.ui.internal.WorkbenchIntroManager.showIntro(org.eclipse.ui.IWorkbenchWindow,
boolean) (Unknown Source)
   at
org.eclipse.ui.internal.WorkbenchWindow.restoreState(org.eclipse.ui.IMemento,
org.eclipse.ui.IPerspectiveDescriptor) (Unknown Source)
   at org.eclipse.ui.internal.Workbench.restoreState(org.eclipse.ui.IMemento)
(Unknown Source)

Comment 5 Andrey Petrov 2005-04-20 18:58:56 UTC
You may disregard my previous message about this stacktrace:
java.lang.NullPointerException
   at java.lang.Object.getClass() (/usr/lib64/libgcj.so.6.0.0)
   at
org.eclipse.ui.internal.ViewIntroAdapterPart.createPartControl(org.eclipse.swt.widgets.Composite)
(Unknown Source)
...

The problem went away when I removed the ~/.eclipse and ~/workspace folders
which were created in my home directory by the official eclipse.org distribution. 
I don't know if you consider the exceptions which occur if you run the official
m6 distribution and then the fc4 version to be bugs.

Comment 6 Andrew Overholt 2005-04-21 13:16:01 UTC
We seem to get a lot of issues from files in ~/.eclipse.  With the work we're
doing on Eclipse bug 90535, hopefully we will get rid of ~/.eclipse for the vast
majority of users.

In terms of workspace issues when alternating between proprietary JVMs and
gcj/gij, I've seem this as well but haven't had time to track it down.  If you
could provide a test case for when this happens, that would help a lot.

Comment 7 Andrew Overholt 2005-04-26 20:25:34 UTC
I guess we'll close for now.  Please re-open as you see fit.


Note You need to log in before you can comment on or make changes to this bug.