Closed jukzi closed 1 year ago
When i go "back" and forth some times to retry i even end up in an NPE
java.lang.NullPointerException: Cannot invoke "org.eclipse.oomph.setup.Installation.getProductVersion()" because "installation" is null
at org.eclipse.oomph.setup.internal.core.SetupTaskPerformer.getSetupTasks(SetupTaskPerformer.java:1460)
at org.eclipse.oomph.setup.internal.core.SetupTaskPerformer.initTriggeredSetupTasks(SetupTaskPerformer.java:322)
at org.eclipse.oomph.setup.internal.core.SetupTaskPerformer.initTriggeredSetupTasks(SetupTaskPerformer.java:306)
at org.eclipse.oomph.setup.internal.core.SetupTaskPerformer.<init>(SetupTaskPerformer.java:271)
at org.eclipse.oomph.setup.internal.core.SetupTaskPerformer.create(SetupTaskPerformer.java:4528)
at org.eclipse.oomph.setup.internal.core.SetupTaskPerformer.create(SetupTaskPerformer.java:4495)
at org.eclipse.oomph.setup.ui.wizards.SetupWizardPage.createPerformer(SetupWizardPage.java:165)
at org.eclipse.oomph.setup.ui.wizards.VariablePage$4.createPerformer(VariablePage.java:551)
at org.eclipse.oomph.setup.ui.wizards.SetupWizardPage$PerformerCreationJob.run(SetupWizardPage.java:365)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63)
The NPE is familiar but always hard to reproduce to debug/fix it... There's a long stand Oomph bug open for it.
As for the setup, it works for me just now and I see the "missing" org.yaml.snakeyaml
in my installation afterwards:
I'm not sure what to suggest. Restart the IDE and try again?
Maybe my snake YAML is a slightly different one... But why no failure. Maybe one of the repos (m2e?) is incomplete and doesn't provide the IUs that it needs to install; but why doesn't mine fail?
i still got the error. what i did is: downloaded installer and dragged
from https://github.com/eclipse-platform/.github/blob/main/CONTRIBUTING.md
the error goes away when i deselect use p2 pool
I see. Updated by existing IDE. I'll try that, but I'm running out of time for today... Sorry...
Created a brand new installation in a brand new user home installed fine and indicates:
Installing org.yaml.snakeyaml [1.27.0.v20201111-1638]
But now I'm really out of time.
After i oomphed platform without p2 pool i get a lot of errors in the error view after each start, which i understand as eclipse would require java 17 instead of 11?
for example
org.osgi.framework.BundleException: Could not resolve module: org.eclipse.wildwebdeveloper.xml [442]
Unresolved requirement: Require-Capability: osgi.ee; filter:="(&(osgi.ee=JavaSE)(version=17))"
or
org.osgi.framework.BundleException: Could not resolve module: org.eclipse.m2e.sourcelookup.ui [309]
Unresolved requirement: Require-Capability: osgi.ee; filter:="(&(osgi.ee=JavaSE)(version=17))"
Unresolved requirement: Require-Bundle: org.eclipse.m2e.sourcelookup; bundle-version="[2.0.0,3.0.0)"
-> Bundle-SymbolicName: org.eclipse.m2e.sourcelookup; bundle-version="2.0.1.20220928-2220"; singleton:="true"
org.eclipse.m2e.sourcelookup [308]
Unresolved requirement: Require-Bundle: org.eclipse.m2e.core; bundle-version="[2.0.0,3.0.0)"
-> Bundle-SymbolicName: org.eclipse.m2e.core; bundle-version="2.0.4.20221002-0838"; singleton:="true"
org.eclipse.m2e.core [290]
Unresolved requirement: Require-Capability: osgi.ee; filter:="(&(osgi.ee=JavaSE)(version=17))"
Unresolved requirement: Require-Bundle: org.eclipse.m2e.launching; bundle-version="[2.0.0,3.0.0)"
-> Bundle-SymbolicName: org.eclipse.m2e.launching; bundle-version="2.0.2.20221002-0838"; singleton:="true"
org.eclipse.m2e.launching [297]
Unresolved requirement: Require-Bundle: org.eclipse.m2e.core; bundle-version="[2.0.0,3.0.0)"
-> Bundle-SymbolicName: org.eclipse.m2e.core; bundle-version="2.0.4.20221002-0838"; singleton:="true"
Unresolved requirement: Require-Bundle: org.eclipse.m2e.core.ui; bundle-version="[2.0.0,3.0.0)"
-> Bundle-SymbolicName: org.eclipse.m2e.core.ui; bundle-version="2.0.2.20221002-1412"; singleton:="true"
org.eclipse.m2e.core.ui [291]
Unresolved requirement: Require-Bundle: org.eclipse.m2e.core; bundle-version="[2.0.0,3.0.0)"
-> Bundle-SymbolicName: org.eclipse.m2e.core; bundle-version="2.0.4.20221002-0838"; singleton:="true"
Unresolved requirement: Require-Bundle: org.eclipse.m2e.binaryproject; bundle-version="[2.0.0,3.0.0)"
-> Bundle-SymbolicName: org.eclipse.m2e.binaryproject; bundle-version="2.0.1.20220928-2220"; singleton:="true"
org.eclipse.m2e.binaryproject [288]
Unresolved requirement: Require-Bundle: org.eclipse.m2e.core; bundle-version="[2.0.0,3.0.0)"
-> Bundle-SymbolicName: org.eclipse.m2e.core; bundle-version="2.0.4.20221002-0838"; singleton:="true"
Unresolved requirement: Require-Bundle: org.eclipse.m2e.core; bundle-version="[2.0.0,3.0.0)"
-> Bundle-SymbolicName: org.eclipse.m2e.core; bundle-version="2.0.4.20221002-0838"; singleton:="true"
at org.eclipse.osgi.container.Module.start(Module.java:463)
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel$2.run(ModuleContainer.java:1852)
at org.eclipse.osgi.internal.framework.EquinoxContainerAdaptor$1$1.execute(EquinoxContainerAdaptor.java:136)
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.incStartLevel(ModuleContainer.java:1845)
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.incStartLevel(ModuleContainer.java:1786)
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.doContainerStartLevel(ModuleContainer.java:1750)
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.dispatchEvent(ModuleContainer.java:1672)
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.dispatchEvent(ModuleContainer.java:1)
at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:234)
at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:345)
eclipse.buildId=4.26.0.I20221005-1800 java.version=11.0.16 java.vendor=Eclipse Adoptium BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=de_DE Command-line arguments: -os win32 -ws win32 -arch x86_64
Yes, the platform SDK doesn't depend on Java 17 so installing the SDK product doesn't require it, but unfortunately some things on the train do now depend on Java 17. I have no mechanism in Oomph currently by which I can force to use Java 17 for the installation. I'll have to invent something at some point in my no-so-copious spare time....
I had a quick look and this is a hard problem to fix in Oomph currently. The decision of which version of Java is required is based on purely what's defined in the selected Product Version and that happens on the first page of the advanced mode. It isn't until we get to the second page and we install Project Stream that might want to install additional things that might require a version of Java higher than what's required by the product itself. 😭
I believe it should be fine for Oomph to mandate Java 17 even if product require Java 11. Esp. considering that Platform will move to Java 17 as soon as someone has a usecase for it.
@merks today i can't oomph with error aQute.bnd.osgi 5.5.0 could not be found
Adding metadata repository https://download.eclipse.org/tools/gef/updates/milestones
Calculating requirements and dependencies.
Cannot complete the request. Generating details.
ERROR: org.eclipse.pde.core code=0 Problems occurred while resolving the target contents
at org.eclipse.oomph.util.OomphPlugin.coreException(OomphPlugin.java:296)
at org.eclipse.oomph.util.pde.TargetPlatformUtil.activateTargetDefinition(TargetPlatformUtil.java:151)
at org.eclipse.oomph.targlets.internal.core.TargletContainer.forceUpdate(TargletContainer.java:905)
at org.eclipse.oomph.setup.targlets.impl.TargletTaskImpl$4.run(TargletTaskImpl.java:1232)
at org.eclipse.oomph.util.pde.TargetPlatformUtil.runWithTargetPlatformService(TargetPlatformUtil.java:120)
at org.eclipse.oomph.setup.targlets.impl.TargletTaskImpl.perform(TargletTaskImpl.java:1092)
at org.eclipse.oomph.setup.internal.core.SetupTaskPerformer.doPerformNeededSetupTasks(SetupTaskPerformer.java:3864)
at org.eclipse.oomph.setup.internal.core.SetupTaskPerformer$WorkspaceUtil$1.run(SetupTaskPerformer.java:5200)
at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2380)
at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2405)
at org.eclipse.oomph.setup.internal.core.SetupTaskPerformer$WorkspaceUtil.performNeededSetupTasks(SetupTaskPerformer.java:5193)
at org.eclipse.oomph.setup.internal.core.SetupTaskPerformer.performNeededSetupTasks(SetupTaskPerformer.java:3798)
at org.eclipse.oomph.setup.internal.core.SetupTaskPerformer.performTriggeredSetupTasks(SetupTaskPerformer.java:3773)
at org.eclipse.oomph.setup.internal.core.SetupTaskPerformer.perform(SetupTaskPerformer.java:3651)
at org.eclipse.oomph.setup.ui.wizards.ProgressPage$9.run(ProgressPage.java:592)
at org.eclipse.oomph.setup.ui.wizards.ProgressPage$11$1.run(ProgressPage.java:721)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63)
ERROR: org.eclipse.equinox.p2.director code=10053 Cannot complete the install because one or more required items could not be found.
ERROR: org.eclipse.equinox.p2.director code=0 Software being installed: artificial_root 1.0.0.v1678446572730
ERROR: org.eclipse.equinox.p2.director code=0 Missing requirement: PDE Core 3.16.100.v20230126-0956 (org.eclipse.pde.core 3.16.100.v20230126-0956) requires 'java.package; aQute.bnd.osgi 5.5.0' but it could not be found
ERROR: org.eclipse.equinox.p2.director code=1 Cannot satisfy dependency:
ERROR: org.eclipse.equinox.p2.director code=0 From: artificial_root 1.0.0.v1678446572730
ERROR: org.eclipse.equinox.p2.director code=0 To: org.eclipse.equinox.p2.iu; org.eclipse.pde.core 0.0.0
Yes, that's kind of broken until release day morning. Here's a workaround:
https://github.com/eclipse-pde/eclipse.pde/pull/497#issuecomment-1463393414
I'll probably look into defining some new variables to use for this situation before the 4.28 -> 4.29 transition...
Now that the SDK requires Java 17, this problem is no longer current.
@merks please help