sling-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Stefan Seifert <sseif...@pro-vision.de>
Subject issues switching to bnd maven plugin
Date Fri, 01 Nov 2019 10:49:13 GMT
additionally to the problems with the bnd baseline maven plugin I'm a bit happy with the way
to express project-level bnd instructions with the bnd-maven-plugin, encountered on the branch
[1].

1. basically the bnd maven plugin supports both bnd.bnd file and configuration via bnd config
parameter in the POM (although the latter is not recommended).
- i know the bnd people have their own special view on POM files and XML file format and try
to put everything outside the POM
- i personally prefer to have those instructions all in the POM, e.g. they are then easily
detectable also for uploaded libraries with their POM on maven central (and not only in the
source jar)
- in general it does not seem to be possible to define a "chain" of parts of bnd configurations
in multiple parent poms, each contributing some aspect
- unlike the maven-bundle-plugin there is only a single "bnd" configuration parameter (we
are using it in sling-bundle-parent), and it does not seem to possible to define additional
instructions in the local POM
- or i did something wrong when trying it
- especially if there are multiple parent POMs involved this seems to be a big restriction
for me

2. sometimes a module has some complex instructions which need line-by-line comments to know
the reason why they are there
- see [2] for example in caconfig-impl
- this is no longer possible in a bnd file because it breaks the multi line syntax with \
in the line endings
- so i ended up collecting the comments above the instructions [3], but this is not a good
replacement
- is there a better solution?

3. i would like to have back an XML-structured way of defining bnd instructions as it was
the case in maven-bundle-plugin in bnd-maven-plugin!
- this was easy to document
- and it nicely followed the maven-ways of inheriting and overwriting individual parameters

stefan

[1] https://github.com/apache/sling-org-apache-sling-caconfig-impl/tree/feature/SLING-8824-parent25
[2] https://github.com/apache/sling-org-apache-sling-caconfig-impl/blob/67fe5f95fe35665c30d95302264941715dcc8b60/pom.xml#L51-L59
[3] https://github.com/apache/sling-org-apache-sling-caconfig-impl/blob/5cf6a823255434c323060cf50ec51400d57499cd/bnd.bnd#L1-L8



Mime
View raw message