Bug 154816 - eclipse fails to start with NoClassDefFoundError
eclipse fails to start with NoClassDefFoundError
Status: CLOSED WONTFIX
Product: Fedora
Classification: Fedora
Component: eclipse (Show other bugs)
4
x86_64 Linux
medium Severity medium
: ---
: ---
Assigned To: eclipse-bugs
:
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2005-04-14 09:04 EDT by Andrey Petrov
Modified: 2007-11-30 17:11 EST (History)
0 users

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2005-04-26 16:25:34 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)
output of /usr/bin/gcj-dbtool -l /usr/lib64/gcj-4.0.0/classmap.db (1.57 MB, text/plain)
2005-04-14 09:04 EDT, Andrey Petrov
no flags Details

  None (edit)
Description Andrey Petrov 2005-04-14 09:04:37 EDT
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 09:04:39 EDT
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 14:04:29 EDT
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 08:22:35 EDT
Can you please try the latest 3.1M6 packages and see if your issue persists?
Comment 4 Andrey Petrov 2005-04-20 14:52:07 EDT
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 14:58:56 EDT
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 09:16:01 EDT
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 16:25:34 EDT
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.