Community
Participate
Working Groups
When using the rcp repository from 3.5: http://download.eclipse.org/eclipse/downloads/drops/R-3.5-200906111540/download.php?dropFile=org.eclipse.rcp-p2repo-3.5.zip You get an error along the lines of Missing requirement: Extension Registry Support 3.4.100 (org.eclipse.equinox.registry) requires 'package javax.xml.parsers' but it could not be found. This is because the rcp.zip does not contain a "a.jre" IU representing the EE. This IU provides the packages that are expecting to come from the jvm. It would be good if the target platform automatically generated such an IU according to the EE specified for the target. The p2.publisher class JREAction can be used to generate this IU.
Not sure if we will get to this for M1, but we'll try.
If you deselect the "install required software box" so we use the slicer instead of the planner, you won't see this problem Andrew.
So using the planner essentially allows a target that isn't fully satisfied. I guess thats why this wasn't done in 3.5. Kim is going to add the a.jre IU to the rcp download repo, so this bug is perhaps nice-but-not-absolutely-necessary.
I almost added support for this late in the 3.5 cycle but we pulled it back when we gave the option. Moving forward, I would like us to do this though. I recall Pascal having reservations about us calling it "a.jre"
Note the JREAction assigned names to the IU by taking the "osgi.java.profile.name", replacing '-', '/', and '_' with '.' and doing toLowerCase(). It also tries to extract a version from the name. eg: EE Name Version OSGi/Minimum-1.1 a.jre.osgi.minimum 1.1.0 OSGi/Minimum-1.2 a.jre.osgi.minimum 1.2.0 J2SE-1.3 a.jre.j2se 1.3.0 J2SE-1.4 a.jre.j2se 1.4.0 CDC-1.0/Foundation-1.0 a.jre.cdc.1.0.foundation 1.0.0
I got ahead of myself marking this for M1. It is an enhancement that should definitely go in for 3.6, but when it goes in will depend on where it fits in with other target platform changes. Though we would definitely accept patches :)
No work has been done on this. Removing milestone.
Having the "a.jre IU (in) the rcp download repo" may be a solution for RCP developers, but not all target definitions include the RCP repo. We are providing own repositories for Equinox-based server development, and having to ensure that there is a magic a.jre in every repository is a real pain. Since the target definition files can specify a JRE version, I think it is rather a bug that the p2 resolver doesn't find the packages of the specified JRE (without the magic IUs). Please revise the priority of this bug report. P.S.: We can't use the slicer mode for compatibility with Tycho. Tycho also uses .target files but only supports the planner mode.
FYI: The target definition file support has been significantly improved in Tycho since my last comment: Tycho now supports both planner and slicer mode (bug 342808) and generates an 'a.jre' IU for the target file resolution according to the EE configured in MANIFEST.MF or pom.xml (bug 364095).
If a patch would be accepted I could try to work on this for M6 - it really makes a bad user experience that targets who would resolve without problems fail because of this.
(In reply to comment #10) > If a patch would be accepted I could try to work on this for M6 - it really > makes a bad user experience that targets who would resolve without problems > fail because of this. Yes, I would review a patch for M6.