

That said, if you do so, this of course ties your implementation to an R6 implementation of Declarative Services, like Apache Felix SCR, version 2.0 or higher.
#List of annotations in aem code#
It also gives you the chance to simplify your code by leveraging the R6 features. However, if you have to touch your code, migrating the annotations might be a good idea. As said, the Apache Felix plugin is still maintained, is open source and simply works. The second question usually is: Should I migrate existing code? There is no need to bulk migrate existing code. Of course, should any bug or problem arise, this will be fixed. And that’s the other reason why you should not use the Apache Felix annotations – they are in maintenance mode. In this case, the answer is clear: use the official annotations from the OSGi specifications – for one, they are defined in a standard, but equally important these annotations support all features of Declarative Services R6 – while the Apache Felix annotations only support R5 and it is very unlikely that they will be updated. Whenever there are competing solutions for the same problem, the question of which one to use arises. Migrating from the Apache Felix SCR Annotations With the OSGi R6 release from 2015, the annotations of the OSGi specifications provide the same functionality and go even beyond. The Java annotations of the Apache Felix SCR Plugin were one of the first options to use annotations to create the descriptors for OSGi Declarative Services components and OSGi metatype descriptions for the configuration of such components.
