Comments (7)
Hi @emweber,
IMHO the manifest of the source jar and the "normal" jar should be identical. Therefore, I would prefer the <override>
option should override both manifest files (in source jar and in the normal jar).
Do you want to create a PR for solving this issue?
from p2-maven-plugin.
Well, I forgot to explicitly mention that in case of org.jboss.spec.javax.annotation:jboss-annotations-api_1.3_spec:2.0.1.Final
the bundle jar has perfect OSGI-headers, so I do not want to override them.
Only the manifest of the source bundle is broken and needs to be re-written.
What if p2-maven-plugin would always automatically detect broken source-bundles and re-writes the manifest then?
WDYT?
from p2-maven-plugin.
Hi @emweber,
your idea that p2 maven plugin could detect broken source-bundle is good. P2 Maven plugin could log a warning if it finds it. But I struggle with the rewriting the manifest automatically, because it fights only a symptom and fighting symptoms should be a conscious decision by the developer to rewrite the manifest. Nevertheless, I would prefer the <override>
option should override both manifest files (in source jar and in the normal jar). Yes, in this case the bundle jar is fine, but from consistency reason the <override>
option should always override both manifest (in source-jar and normal jar). In your case it would mean, that you have to "copy" the bnd instruction from the original one.
from p2-maven-plugin.
Hi Sandra,
the pull requests as a POC simply removes the Export-Package, Export-Service and Provide-Capability headers from an existing source-bundle manifest before the Eclipse-SourceBundle headers are written. No logging yet since I'm unsure what the message should look like.
While this does not fix the issue, it solves my use-case: Fix broken source bundle manifests.
Maybe I should update the issue title?
from p2-maven-plugin.
Hi @emweber, yes... please update the issue title.
from p2-maven-plugin.
@emweber Thank you for your contribution. I released a new version 1.7.0. with your PR. So in the next hours it should be available on Maven Central.
from p2-maven-plugin.
Hi @emweber,
This is great and I just had a similar case, but wondering if there are any reasons why only removing the exports?
from p2-maven-plugin.
Related Issues (20)
- Support for Multi-release JAR
- create binary identical JARs for unmodified input HOT 1
- Allow exclude at root level HOT 2
- Move from Github Action to Drone
- Publish Maven Site as Gihub Page
- Automate Writing Release Notes
- [Maintenance] Maven Build fails when running with Maven 3.8.1 HOT 2
- Mapping javadoc attachment
- Documentation request: Cutting a recursion
- Dependency Dashboard
- API Incopatibility when using the plugin with tycho version > 1.3.0 HOT 5
- Is there a way to sign the jars before creating the artifacts.jar? HOT 6
- Making a local site that _mimic_ a `.target` results in `ZipException: zip END header not found` HOT 2
- Support using maven BOMs to specify library versions HOT 1
- Update JUnit Tests to JUnit 5 HOT 1
- Tycho 3.0.0 incompatibilities HOT 19
- How to exclude certain file while generating a bundle from jar? HOT 3
- Option to remove osgi.ee capability requirements HOT 1
- Thank you HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from p2-maven-plugin.