Bug 1479088 - cdtdebug cannot start: java.lang.ClassNotFoundException: org.eclipse.core.runtime.adaptor.EclipseStarter
Summary: cdtdebug cannot start: java.lang.ClassNotFoundException: org.eclipse.core.run...
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: eclipse-cdt
Version: 26
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Mat Booth
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2017-08-07 22:43 UTC by Christian Stadelmann
Modified: 2017-08-14 21:51 UTC (History)
7 users (show)

Fixed In Version: eclipse-cdt-9.3.1-1.fc27 eclipse-cdt-9.3.1-1.fc26
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2017-08-14 21:51:55 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)
The log file requested in comment #3 (4.68 KB, text/plain)
2017-08-09 22:18 UTC, Christian Stadelmann
no flags Details

Description Christian Stadelmann 2017-08-07 22:43:18 UTC
Description of problem:
I cannot start cdtdebug at all.

Version-Release number of selected component (if applicable):
eclipse-swt-4.7.0-2.fc26.x86_64
eclipse-cdt-9.3.0-0.3.gitbfe45e8.fc26.x86_64
gtk3-3.22.17-2.fc26.x86_64
glib2-2.52.3-1.fc26.x86_64
java-1.8.0-openjdk-1.8.0.141-1.b16.fc26.x86_64
gdb-8.0-20.fc26.x86_64

How reproducible:
always

Steps to Reproduce:
1. Start cdtdebug (by command line or from its menu entry)

Actual results:
Does not start. Instead I get an error message dialog:
> Eclipse
> An error has occurred. See the log file
> …

The log file contains nothing but these lines:

> !SESSION [Date] [Time] [Timezone] 2017 -----------------------------------------
> !ENTRY org.eclipse.equinox.launcher 4 0 [Date-Time]
> !MESSAGE Exception launching the Eclipse Platform:
> !STACK
> java.lang.ClassNotFoundException: org.eclipse.core.runtime.adaptor.EclipseStarter
> 	at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
> 	at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
> 	at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
> 	at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:650)
> 	at org.eclipse.equinox.launcher.Main.basicRun(Main.java:590)
> 	at org.eclipse.equinox.launcher.Main.run(Main.java:1499)
> 	at org.eclipse.equinox.launcher.Main.main(Main.java:1472)

Expected results:
Start fine.

Additional info:
Starting with the "-clean" command line option does not work around this bug, nor does deleting the ~/fctdebugger folder or the ~/.eclipse or ~/.swt or ~/.cache/eclipse folder.

Comment 1 Mat Booth 2017-08-09 16:12:06 UTC
Hmm, I cannot reproduce this on my F26 machine.

What if you tried a fresh workspace? For example:

$ cdtdebug -data workspace-$(date -u +%Y%m%d%H%M%S)

What other eclipse packages do you have installed? Maybe I need to replicate your install more precisely.

Comment 2 Christian Stadelmann 2017-08-09 22:01:29 UTC
(In reply to Mat Booth from comment #1)
> Hmm, I cannot reproduce this on my F26 machine.
> 
> What if you tried a fresh workspace? For example:
> 
> $ cdtdebug -data workspace-$(date -u +%Y%m%d%H%M%S)

Bug is still present. Command line output:

$ LC_ALL=C cdtdebug -data workspace-$(date -u +%Y%m%d%H%M%S)
find: '/usr/local/bin/plugins': No such file or directory
CompilerOracle: exclude org/eclipse/core/internal/dtree/DataTreeNode.forwardDeltaWith
CompilerOracle: exclude org/eclipse/jdt/internal/compiler/lookup/ParameterizedMethodBinding.<init>
CompilerOracle: exclude org/eclipse/cdt/internal/core/dom/parser/cpp/semantics/CPPTemplates.instantiateTemplate
CompilerOracle: exclude org/eclipse/cdt/internal/core/pdom/dom/cpp/PDOMCPPLinkage.addBinding
CompilerOracle: exclude org/python/pydev/editor/codecompletion/revisited/PythonPathHelper.isValidSourceFile
CompilerOracle: exclude org/eclipse/tycho/core/osgitools/EquinoxResolver.newState
Gtk-Message: GtkDialog mapped without a transient parent. This is discouraged.


> What other eclipse packages do you have installed? Maybe I need to replicate
> your install more precisely.

$ rpm -qa | grep eclipse
eclipse-linuxtools-libhover-6.1.0-1.fc26.noarch
eclipse-platform-4.7.0-2.fc26.x86_64
eclipse-tm-terminal-4.3.0-0.2.gitfa298da.fc26.noarch
eclipse-rse-3.7.3-1.fc26.noarch
eclipse-epp-logging-2.0.5-1.fc26.noarch
eclipse-tm-terminal-connectors-4.3.0-0.2.gitfa298da.fc26.noarch
eclipse-linuxtools-6.1.0-1.fc26.noarch
eclipse-egit-4.8.0-2.fc26.noarch
eclipse-mpc-1.6.0-0.3.gitfce01a1.fc26.noarch
eclipse-jgit-4.8.0-2.fc26.noarch
eclipse-launchbar-2.1.1-0.2.gitff9289d.fc26.noarch
eclipse-egit-github-4.8.0-2.fc26.noarch
eclipse-ecf-core-3.13.7-3.fc26.noarch
eclipse-emf-runtime-2.13.0-2.fc26.noarch
eclipse-linuxtools-valgrind-6.1.0-1.fc26.noarch
eclipse-cdt-native-9.3.0-0.3.gitbfe45e8.fc26.x86_64
eclipse-equinox-osgi-4.7.0-2.fc26.x86_64
eclipse-jdt-4.7.0-2.fc26.noarch
eclipse-mylyn-tasks-bugzilla-3.23.0-3.fc26.noarch
eclipse-remote-3.0.0-0.1.git96f33c6.fc26.noarch
eclipse-e4-importer-0.2.0-0.4.gitb50f851.fc26.noarch
eclipse-pde-4.7.0-2.fc26.x86_64
eclipse-p2-discovery-4.7.0-2.fc26.noarch
eclipse-filesystem-1.0-9.fc26.noarch
eclipse-cdt-9.3.0-0.3.gitbfe45e8.fc26.x86_64
eclipse-emf-core-2.13.0-2.fc26.noarch
eclipse-abrt-0.0.3-2.fc26.noarch
eclipse-usage-4.4.4-1.fc26.noarch
eclipse-mylyn-3.23.0-3.fc26.noarch
eclipse-pydev-5.8.0-1.fc26.x86_64
eclipse-swt-4.7.0-2.fc26.x86_64


$ rpmorphan -all | grep eclipse
eclipse-abrt
eclipse-e4-importer
eclipse-egit-github
eclipse-linuxtools-libhover
eclipse-linuxtools-valgrind
eclipse-mpc
eclipse-pydev
eclipse-usage

Comment 3 Mat Booth 2017-08-09 22:08:58 UTC
(In reply to Christian Stadelmann from comment #2)
> find: '/usr/local/bin/plugins': No such file or directory

Oh, that's interesting. Maybe the launch script is doing something wonky. Can you please try invoking like this and attaching the stderr output, e.g.:

$ bash -x /usr/bin/cdtdebug 2> logfile

Comment 4 Christian Stadelmann 2017-08-09 22:18:02 UTC
Created attachment 1311416 [details]
The log file requested in comment #3

(In reply to Mat Booth from comment #3)
> (In reply to Christian Stadelmann from comment #2)
> > find: '/usr/local/bin/plugins': No such file or directory
> 
> Oh, that's interesting. Maybe the launch script is doing something wonky.
> Can you please try invoking like this and attaching the stderr output, e.g.:
> 
> $ bash -x /usr/bin/cdtdebug 2> logfile

$ LC_ALL=C bash -x /usr/bin/cdtdebug 2> logfile
CompilerOracle: exclude org/eclipse/core/internal/dtree/DataTreeNode.forwardDeltaWith
CompilerOracle: exclude org/eclipse/jdt/internal/compiler/lookup/ParameterizedMethodBinding.<init>
CompilerOracle: exclude org/eclipse/cdt/internal/core/dom/parser/cpp/semantics/CPPTemplates.instantiateTemplate
CompilerOracle: exclude org/eclipse/cdt/internal/core/pdom/dom/cpp/PDOMCPPLinkage.addBinding
CompilerOracle: exclude org/python/pydev/editor/codecompletion/revisited/PythonPathHelper.isValidSourceFile
CompilerOracle: exclude org/eclipse/tycho/core/osgitools/EquinoxResolver.newState


It looks like this problem is related to the fact that I have an executable file at /usr/local/bin/eclipse with this content (not quoted, of course):

> #!/bin/sh
> export GTK_THEME=Adwaita:light
> /usr/bin/eclipse $@

Comment 5 Christian Stadelmann 2017-08-09 22:23:17 UTC
After removing /usr/local/bin/eclipse, running

$ LC_ALL=C bash -x /usr/bin/cdtdebug 2> logfile2

works fine. The other command

$ LC_ALL=C cdtdebug -data workspace-$(date -u +%Y%m%d%H%M%S)

also works fine after cd'ing to a folder I can write to.

Comment 6 Mat Booth 2017-08-09 22:47:26 UTC
Yep, your script causes the output of "which eclipse" to be something that cdtdebug does not expect.

I suppose it is safe these days for cdtdebug to always assume that the eclipse executable lives in /usr/lib/eclipse

Comment 7 Fedora Update System 2017-08-10 15:25:27 UTC
eclipse-linuxtools-6.1.0-2.fc26 eclipse-cdt-9.3.1-1.fc26 has been submitted as an update to Fedora 26. https://bodhi.fedoraproject.org/updates/FEDORA-2017-5780018d4d

Comment 8 Fedora Update System 2017-08-13 04:04:59 UTC
eclipse-cdt-9.3.1-1.fc26, eclipse-linuxtools-6.1.0-2.fc26 has been pushed to the Fedora 26 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2017-5780018d4d

Comment 9 Fedora Update System 2017-08-14 21:51:55 UTC
eclipse-cdt-9.3.1-1.fc26, eclipse-linuxtools-6.1.0-2.fc26 has been pushed to the Fedora 26 stable repository. If problems still persist, please make note of it in this bug report.


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