Bug 526493 - Missing org.eclipse.e4.ui sources
Summary: Missing org.eclipse.e4.ui sources
Status: NEW
Alias: None
Product: Platform
Classification: Eclipse Project
Component: Releng (show other bugs)
Version: 4.8   Edit
Hardware: All All
: P3 normal (vote)
Target Milestone: ---   Edit
Assignee: Platform-Releng-Inbox CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2017-10-26 05:30 EDT by Ed Willink CLA
Modified: 2019-10-31 07:16 EDT (History)
1 user (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Ed Willink CLA 2017-10-26 05:30:48 EDT
M2: I'm attempting to debug a Tycho surefire startup problem. On my stack I see

org.eclipse.e4.ui.internal.workbench.swt.E4Application

but when I select its stack frame there are no sources.

What is the point of an Eclipse SDK that does not have Eclipse sources?
Comment 1 Ed Willink CLA 2017-10-26 05:33:25 EDT
Clarification.

When debugging as a Junit Plugin test the stack frame does relate to sources.

When remote debugging a Tycho surefire test using port 5005 the stack frame has missing sources.
Comment 2 Ed Willink CLA 2017-10-26 05:48:46 EDT
This may be related to types being invisible in the Type Hierarchy until some project includes the containing plugin as a dependency.

When I reported, E4Application was indeed invisible, but since adding it to my classpath of 'everything' project, E4Application is now visible to the Type Hierarchy but still invisible to the remote debugger. It does however stop correctly at a breakpoint, but without showing the source line.
Comment 3 Mickael Istria CLA 2017-10-26 07:17:03 EDT
Does your target platform contain the source files?
Can you see the source for some other classes in this bundle? Can you see sources of some other Platform classes?
Comment 4 Ed Willink CLA 2017-10-26 08:14:01 EDT
I can see source for most platform classes. e.g. org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.

My target platform includes org.eclipse.sdk.feature.group, but as my cross-project-dev query asks, what is an SDK source-wise these days? Is it necessary to use org.eclipse.sdk.source.feature.group in a debuggable target?

(If so, perhaps use of a debugPort might alert the user to lack of sources in the target platform)
Comment 5 Ed Willink CLA 2019-10-31 04:35:37 EDT
Just hit this again.

Use ctrl-shift-T to open org.eclipse.ui.internal.PopupMenuExtender; source appears; good.

Use F3 to open 

"import org.eclipse.e4.ui.internal.workbench.ContributionsAnalyzer;"

No source available; bad.

This is a real pain since I have a user trying to report a regression in PopupMenuExtender.

(In reply to Mickael Istria from comment #3)
> Does your target platform contain the source files?
> Can you see the source for some other classes in this bundle? Can you see
> sources of some other Platform classes?

It seems self evident that PopupMenuExtender must be part of the running platform then the imported ContributionsAnalyzer must be too.
Comment 6 Ed Willink CLA 2019-10-31 06:02:59 EDT
Not even org.eclipse.e4.ui.model.application.ui.menu.MMenu is available.

Non-internal platform source not available in SDK => MAJOR; Eclipse violates its open source utility.
Comment 7 Ed Willink CLA 2019-10-31 07:16:26 EDT
Workaround: import org.eclipse.ui.workbench as a plugin with sources.