[
https://issues.apache.org/jira/browse/FELIX-4135?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13694090#comment-13694090
]
Pierre De Rop commented on FELIX-4135:
--------------------------------------
finally, I think I found why the scr annotations were not parsed by the scr bnd
plugin: the problem comes from the
META-INF/services/org.apache.felix.scrplugin.annotations.AnnotationProcessor in
the org.apache.felix.scr.bnd-1.0.0-SNAPSHOT.jar file, which contains this:
org.apache.felix.scrplugin.ds.DSAnnotationProcessor
So the other processors are missing (scr and sling processors), and if I
manually add the other processors in the
META-INF/services/org.apache.felix.scrplugin.annotations.AnnotationProcessor
resource file, then all is working fine (scr annotations + DS annotations are
properly handled in bndtools):
org.apache.felix.scrplugin.ds.DSAnnotationProcessor
org.apache.felix.scrplugin.processing.SCRAnnotationProcessor
org.apache.felix.scrplugin.processing.SlingAnnotationProcessor
The problem actually comes from the pom.xml of the attached scr bnd project,
which is including the org.apache.felix.scr.annotations and the
org.apache.felix.scr.ds-annotations artifacts in the target bndtools jar like
this:
<includeArtifactIds>
...,org.apache.felix.scr.annotations,org.apache.felix.scr.ds-annotations
</includeArtifactIds>
So, the
META-INF/services/org.apache.felix.scrplugin.annotations.AnnotationProcessor
included from org.apache.felix.scr.ds-annotations artifact just overrides the
one from org.apache.felix.scr.annotations. That's why the sling and scr
processors are missing.
I have to find a way to merge the
META-INF/services/org.apache.felix.scrplugin.annotations.AnnotationProcessor
resource file from org.apache.felix.scr.ds-annotations and
org.apache.felix.scr.annotations artifacts into the the target bndtools jar
(org.apache.felix.scr.bnd)
...
> Bnd scrplugin contrib
> ---------------------
>
> Key: FELIX-4135
> URL: https://issues.apache.org/jira/browse/FELIX-4135
> Project: Felix
> Issue Type: Improvement
> Components: Maven SCR Plugin
> Reporter: Pierre De Rop
> Priority: Minor
> Attachments: bnd-scr-plugin.2.tgz, bnd-scr-plugin.tgz,
> test.bndtools.scrplugin.tgz
>
>
> This issue is related to the following post, which is about writing a
> bndtools plugin for the Apache Felix Scrplugin annotations:
> http://www.mail-archive.com/[email protected]/msg29200.html
> If this may help, I have attached to this issue a simple BND plugin, which
> internally invokes the SCRDescriptorGenerator in order to generate the
> descriptors for Apache Felix Scr annotations, as well as DS 1.2 annotations
> (using the scrplugin generator).
> Basically, just adding the following parameter in a directives.bnd file
> allows to invoke the plugin:
> -plugin
> org.apache.felix.scrplugin.bnd.SCRDescriptorBndPlugin;destdir=target/classes
> I did some tests using a BND Ant task, and it seems to work, and will try to
> do a test with bndtools this week (for now I don't know how to add a plugin
> in bndtools, but I guess it's easy).
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira