Thank you Tim,  I knew the version was probably the issue, but I could not find version 6 of org.osgi.compendium  in any of the public Maven repositories.
Do you know of a public Maven repository where I can get the artifact?

Best regards,
Alex soto



On Aug 23, 2016, at 6:32 PM, Tim Ward <tim.ward@paremus.com> wrote:

This is absolutely correct. 

The "Release 6" version of declarative services supports field injection. The "Release 5" version that you are depending on does not!

Regards,

Tim

Sent from my iPhone

On 23 Aug 2016, at 22:43, Alex Soto <alex.soto@envieta.com> wrote:


Hello,

I am new SCR, but based on the "The OSGi Alliance OSGi Compendium, Release 6 July 2015"  the Reference annotation can be applied to fields.

@Reference

Identify the annotated member as a reference of a Service Component. When the annotation is applied to a method, the method is the bind method of the reference. When the annotation is applied to a field, the field will contain the bound service(s) of the reference. This annotation is not processed at runtime by Service Component Runtime. It must be processed by tools and used to add a Component Description to the bundle. In the generated Component Description for a component, the references must be ordered in ascending lexicographical order (using String.compareTo ) of the reference names.

The reference element of a Component Description. CLASS
METHOD
,FIELD 


However, the actual jar declaring this annotation from Maven import: 

  <groupId>org.osgi</groupId>
  <artifactId>org.osgi.compendium</artifactId>
  <version>5.0.0</version>

Does not support Field, only Method.  So I can’t apply the @Reference annotation to fields.

What am I missing? 

Best regards,

Alex soto