-
Notifications
You must be signed in to change notification settings - Fork 116
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Non-Maven locations cannot depend on Maven locations in PDE target definition #374
Comments
This is not possible due to current PDE design (this is not a limitation of the m2e target location but of PDE IUTargetlocation), Tycho behave a bit "non-standard" here. |
I was afraid that this is the case. 😞 But thanks for confirming this so quickly. |
Just for curiosity why do you require a maven artifact for something that seems also be available as an update-site? If it is feasible you can use the slicer mode instead of planer that allows to mix any combination of target type or fetch the artifact from the p2 site and include the maven one additionally (if you like to have just another version fro this specific artifact). |
By the way: The same problem arises if one uses a directory location or alike, as the planner-mode only supports other IU-Locations. Technically I think it would be possible to enhance the IU location but this might require some discussions with the PDE team :-) |
Because the artifact available on the Subclipse p2 update site is broken: The use a wrong value for Now, Subclipse merely redistributes SVNKit and SQLJet. But the upstream update site published by the SVNKit project (https://eclipse.svnkit.com/1.10.x/) still only includes a broken SQLJet 1.1.12 (https://eclipse.svnkit.com/1.10.x/plugins/org.tmatesoft.sqljet_1.1.12.r1336.jar). Moreover, the SVNKit project still publishes an old-style update site – which Tycho cannot consume. This is something that has been reported upstream (https://support.tmatesoft.com/t/no-repository-found-at-http-eclipse-svnkit-com-1-10-x/2388/6) but not acted upon. 😞 Also, I already reported the broken header upstream (https://support.tmatesoft.com/t/sqljet-bundle-requiredexecutionenvironment-header-violates-osgi-spec/2610) and, indeed, SQLJet 1.1.14 finally has correct I will give slice mode a try, I think, getting everything from p2 update sites except for the fixed SQLJet 1.1.14. Hopefully, that works. 🤞 |
What a mess, good luck :-D |
Thank you for your suggestion; it brought me onto the right track. 😅 It is actually even simpler than what you suggested: I don't need to declare <location includeSource="true" missingManifest="error" type="Maven">
<dependencies>
<dependency>
<groupId>org.tmatesoft.sqljet</groupId>
<artifactId>sqljet-osgi</artifactId>
<version>1.1.14</version>
<type>jar</type>
</dependency>
</dependencies>
</location> |
An Eclipse 2021-09 PDE with the latest m2e snapshot (1.18.2.20211011-2139) installed cannot resolve a target definition if a non-Maven location references a location of type Maven. Tycho 1.5.0, on the other hand, can resolve the following just fine:
With PDE, this merely yields the following error:
Should it be possible for a non-Maven location to depend on the OSGi bundles generated by a Maven location? Or is this not (yet 🙏) possible?
The text was updated successfully, but these errors were encountered: