[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
Re: [ee4j-build] Fwd: [eclipse-ee4j/jta-api] Jakarta release has wrong OSGi Bundle-SymbolicName (#27)
|
Well, I'll try to be short:-)
During the initial part of the build, p2 repository/eclipse update site with compilation dependencies taken from various sources (maven repo, eclipse orbit-not everything in mvn repos is correct osgi bundle, local filesystem - ie proprietary dependencies cannot be exposed on public site...) is created using tools provided by Eclipse SDK and Tycho and this repository is exposed to the next part of the build through custom Eclipse Feature/Plugin containing all these dependency jars. p2 assumes that an id of the plugin/jar in plugin's descriptor file is equal to bundle-symbolicname which is then equal to the file name in the form of '<name>_$version.jar'. In all other cases p2 tooling refuses to find the file or at least install created feature with the plugin into Eclipse RCP based application (this is called feature, not a bug).
In the past we had to either rename the file or update its manifest ourselves in case of a mismatch and publish updated file somewhere (src repo, orbit, own update site) but these days we rely on some Tycho plugin which makes sure that p2 will be able to consume created p2 repo, ie it renames the file if needed. Intuitive? No. But works and we don't have to alter files ourselves anymore. This is the simplified version of what this first step used to be.
The next part of the build then just reads manifest files and for each imported package it tries to find an osgi bundle with appropriate export. If and only if all imports are satisfied and all found bundles are correctly wired together, then actual compilation starts. There is no javac and no direct classpath. It's all about tycho compiler, built around eclipse compiler, and OSGi bundles in p2 repository/update site.
Thank you,
--lukas
Sent from mobile
-------- Původní zpráva --------
Od: Bill Shannon <bill.shannon@xxxxxxxxxx>
Datum: 06.12.18 22:58 (GMT+01:00)
Komu: EE4J build and releng discussions <ee4j-build@xxxxxxxxxxx>, "lukas.jungmann@xxxxxxxxxx" <LUKAS.JUNGMANN@xxxxxxxxxx>, Dmitry Kornilov <dmitry.kornilov@xxxxxxxxxx>
Cc: Radek Felcman <radek.felcman@xxxxxxxxxx>
Předmět: Re: [ee4j-build] Fwd: [eclipse-ee4j/jta-api] Jakarta release has wrong OSGi Bundle-SymbolicName (#27)
I'm curious... How does EclipseLink use the bundle symbolic name
when compiling? How does it know that the file name and the bundle
symbolic name don't match?
Hi,
The thing is that the convention/best
practice/recommendation[1] is that Bundle-SymbolicName ==
artifactId. In some projects 'javax' in artifactId was updated
to 'jakarta' but corresponding change in symbolicname has not
been done. In some, the change was done.
Why we think that mismatch here is a bug and possibly a
regression against 5.0.1?
* This used to match and follow conventions
* currently the naming is inconsistent between projects
* eclipselink won't be able to compile without renaming the
file to match its bundle symbolicname - there are ways/tools to
help us to fulfill this requirement but fixing the source of the
trouble is usually the best thing to do (at this point, we're
catching this and few other osgi related issues, like completely
missing headers, for free)
Thank you,
--lukas
Sent from mobile
-------- Původní zpráva --------
Datum: 06.12.18 20:33 (GMT+01:00)
Předmět: Re: [ee4j-build] Fwd: [eclipse-ee4j/jta-api]
Jakarta release has wrong OSGi Bundle-SymbolicName (#27)
+ Lukas, Radek
There are several bugs like this one. We found it when we were
started working on uptaking new components in EclipseLink. I think
that SymbolicName should be consistent across all Jakarta EE
components. Now some components use old symbolic name (javax.xxx)
and some use the new one (jakarta.xxx). We raised bugs for all
these issues we found, but there could be some more. We checked
only components which EclipseLInk depends on.
— Dmitry
I don't
think that bug is critical for this release, but if you
can release another dot-dot version of the API to fix it
that would be great.
Hopefully the spec-version-maven-plugin can catch these
errors, are you using it?
Others will have to answer about the current TCK
process...
Tom Jenkinson wrote on
12/6/18 6:56 AM:
Hi,
A user from the JTA community raised
the topic of an OSGi bundle symbolic name being
incorrect in the Jakarta EE JTA API release.
Is this something I should be
looking to change? I don't think it was
specifically raised as something to address yet?
If it is a change that must be made
prior to GlassFish 5.1, is the process to
request a TCK run still to tag @anajosep as I
did previously [1]
Thanks,
Tom
Jakarta release of this API has
wrong value of OSGi Bundle-SymbolicName in
MANIFEST.MF.
Current value is javax.transaction-api
but expected value could be jakarta.transaction-api
.
—
You are receiving this because you are
subscribed to this thread.
Reply to this email directly, view it on GitHub, or mute the thread.![]()
_______________________________________________
ee4j-build mailing list
ee4j-build@xxxxxxxxxxx
To change your delivery options, retrieve your password, or unsubscribe from this list, visit
https://www.eclipse.org/mailman/listinfo/ee4j-build
_______________________________________________
ee4j-build mailing list
ee4j-build@xxxxxxxxxxx
To change your delivery options, retrieve your password,
or unsubscribe from this list, visit
https://www.eclipse.org/mailman/listinfo/ee4j-build
_______________________________________________
ee4j-build mailing list
ee4j-build@xxxxxxxxxxx
To change your delivery options, retrieve your password, or unsubscribe from this list, visit
https://www.eclipse.org/mailman/listinfo/ee4j-build