It totally worked! 

Your method it seems interesting: you use <_include>bnd.bnd</_include> tag 
to decouple the pom.xml (maven information) with the information regarding 
OSGi. 
Since you're here can I ask you a couple of questions regarding your method:

1) What if I need to add a variable inside the bnd.bnd file? In maven I can 
use properties or I can override plugin behaviour. If I move my OSGi 
settings to the bnd.bnd file what kind of variable support do I have?
2) are you using bndtools with it (just curious)?

Thank you very much!


On Thursday, April 6, 2017 at 5:08:26 PM UTC+2, Christian Schneider wrote:
>
> I think the problem might be the maven-bundle-plugin version. I updated 
> the version to 3.2.0 and it worked for me.
>
> I also change the config to just this:
>
>     <build>
>         <plugins>
>             <plugin>
>                 <groupId>org.apache.felix</groupId>
>                 <artifactId>maven-bundle-plugin</artifactId>
>                 <version>${maven.bundle.plugin.version}</version>
>                 <extensions>true</extensions>
>             </plugin>
>         </plugins>
>     </build>
>
> I think that the old plugin maybe does not fully work with the most 
> current DS annotations.
>
> Btw. This is what I use most often now to create bundles:
>
> https://github.com/cschneider/Karaf-Tutorial/blob/master/tasklist-ds/pom.xml#L107-L118
>
> I then define the OSGi settings in bnd.bnd files if necessary. Like here 
>
> https://github.com/cschneider/Karaf-Tutorial/blob/master/tasklist-ds/model/bnd.bnd
>
> Christian
>
> On 06.04.2017 17:01, Massimo Bono wrote:
>
> Just to be sure, I totally remove the whole "bundle-example" project, 
> leaving only the "bundle-example-impl" (I also removed the artifact from my 
> maven repository just to be sure). 
> Pax exam still gives the same error though. :(
>
> On Thursday, April 6, 2017 at 3:52:28 PM UTC+2, Massimo Bono wrote: 
>>
>> Ehm... that one is totallly my fault. In my first test I separated 
>> interface from module implementation. Since I couldn't test it, I thought 
>> simplifying the project might solve the issue.  
>> As you can see in *microsi-root/pom.xml* that project is *not used  at 
>> all*:
>>
>> <modules>
>>
>> <!-- <module>examples/bundle-example</module>-->
>> <module>examples/bundle-example-impl</module>
>> <module>examples/itest-bundle-example</module>
>>
>> </modules>
>>
>> Clearly, even removing the interface bundle and moving the 
>> BundleExample.java into bundle-example-impl project didn't solve the issue. 
>> :(
>> Do you have another idea of what I might be missing? 
>> On Thursday, April 6, 2017 at 3:25:36 PM UTC+2, Christian Schneider 
>> wrote: 
>>>
>>> No .. that looks fine .. I guess I was just blind :-)
>>>
>>> I think the the problem is about where the service interface comes from. 
>>> The BundleExample interface is present in the bundle-example bundle as well 
>>> as in the bundle-example-impl bundle.
>>> The service is created based on the interface from bundle-example-impl 
>>> but the itest depends on the bundle-example bundle. So I guess they see 
>>> different interfaces.
>>>
>>>
>>> Christian
>>>
>>> On 06.04.2017 15:00, Massimo Bono wrote:
>>>
>>> I thought by installing SCR bundle I was be able to exploit DS service. 
>>>
>>> Are you telling me that:
>>>
>>> CoreOptions.mavenBundle().groupId("org.apache.felix").artifactId("
>>>> org.apache.felix.scr").version("2.0.8"),
>>>
>>> is not sufficient to exploit DS? 
>>> On Thursday, April 6, 2017 at 2:25:44 PM UTC+2, Christian Schneider 
>>> wrote: 
>>>>
>>>> In your BundleExample impl you use declarative services but you do not 
>>>> install the scr bundle in your test config. So your bundle is installed 
>>>> but 
>>>> the @Component will not do anything. So TestBundleExayou can not inject 
>>>> the 
>>>> service because there is no such service published in the runtime. 
>>>> Christian On 06.04.2017 14:14, Massimo Bono wrote: 
>>>>
>>>> Hello to all! 
>>>> I'm learning OSGi technology and I discover pax exam 4.
>>>> I've tried to follow the guide lines at Getting Started with OSGi Tests 
>>>> <https://ops4j1.jira.com/wiki/display/PAXEXAM4/Getting+Started+with+OSGi+Tests>
>>>>  and OSGi Containers 
>>>> <https://ops4j1.jira.com/wiki/display/PAXEXAM4/OSGi+Containers>. 
>>>> However, it seems I can't start the testing.
>>>> The error is the following one:
>>>>
>>>>> simpleGreetingImplCheck(com.massimobono.microsi.examples.bundleexample.TestBundleExampleImpl):
>>>>>  
>>>>> gave up waiting for service 
>>>>> com.massimobono.microsi.examples.bundleexample.BundleExample 
>>>>> test(com.massimobono.microsi.examples.bundleexample.TestBundleExampleImpl):
>>>>>  
>>>>> gave up waiting for service 
>>>>> com.massimobono.microsi.examples.bundleexample.BundleExample
>>>>
>>>> It seems that pax exam starts correctly, but fails to inject 
>>>> bundle-example (a "hello world" bundle I'm testing).
>>>> I'm putting all the source code here 
>>>> <https://github.com/Koldar/pax-exam-test>.
>>>> Furthermore, here some additional information:
>>>>
>>>>    1. I'm using Java 1.8.0_121; 
>>>>    2. The OSGi implementation chosen is 5.6.2; 
>>>>    3. I'm using maven and I'm using the one available via m2e Eclipse 
>>>>    plugin (m2e version 1.7); 
>>>>    4. Eclipse version is 4.6.0 (Neon); 
>>>>    5. Pax exam version is 4; 
>>>>
>>>> If you look at the POM of the test (itest-bundle-example), you'll 
>>>> notice I've added other dependencies aside those cite in Osgi 
>>>> Containers 
>>>> <https://ops4j1.jira.com/wiki/display/PAXEXAM4/OSGi+Containers>. I've 
>>>> added them because I got other errors before getting stuck on the "gave up 
>>>> waiting" one.
>>>>
>>>>    - *org.ops4j.pax.exam:pax-exam-container-native:4.10.0*: I've added 
>>>>    it because otherwise Pax complained with "No TestContainer 
>>>> implementation 
>>>>    in Classpath"; 
>>>>    - 
>>>>    - *org.ops4j.pax.exam:pax-exam-link-assembly:4.10.0*: I've added it 
>>>>    because otherwise Pax complained with "Problem starting test 
>>>> container"; 
>>>>
>>>> If you look at the log maven generates (see attachment maven.log) 
>>>> you'll see that the platform correctly *resolve and install* my bundle:
>>>> 14:05:05.895 [main] DEBUG org.ops4j.pax.url.mvn.internal.Connection - 
>>>> *Resolving 
>>>> *
>>>> [mvn:com.massimobono.microsi.examples/bundle-example-impl/0.0.1-SNAPSHOT]
>>>> 14:05:05.897 [main] DEBUG 
>>>> shaded.org.eclipse.aether.internal.impl.DefaultLocalRepositoryProvider - 
>>>> Using manager PaxLocalRepositoryManager with priority 0.0 for 
>>>> E:\Users\massi\.m2\repository
>>>> 14:05:05.919 [main] DEBUG 
>>>> org.ops4j.pax.url.mvn.internal.AetherBasedResolver - *Resolved 
>>>> *(com.massimobono.microsi.examples:bundle-example-impl:jar:0.0.1-SNAPSHOT) 
>>>> as 
>>>> E:\Users\massi\.m2\repository\com\massimobono\microsi\examples\bundle-example-impl\0.0.1-SNAPSHOT\bundle-example-impl-0.0.1-SNAPSHOT.jar
>>>> 14:05:05.922 [main] DEBUG 
>>>> org.ops4j.pax.exam.nat.internal.NativeTestContainer - + *Install 
>>>> *(start@3) 
>>>> MavenArtifactUrlReference{groupId='com.massimobono.microsi.examples', 
>>>> artifactId='bundle-example-impl', version='0.0.1-SNAPSHOT', type='null'}
>>>> If I comment out the "@Inject" annotation, everything works, so I think 
>>>> I configured wrongly pax exam.
>>>> Waiting for any kind reply!
>>>> -- -- ------------------ OPS4J - http://www.ops4j.org - 
>>>> [email protected] --- You received this message because you are 
>>>> subscribed to the Google Groups "OPS4J" group. To unsubscribe from this 
>>>> group and stop receiving emails from it, send an email to 
>>>> [email protected]. For more options, visit 
>>>> https://groups.google.com/d/optout. 
>>>>
>>>> -- 
>>>> Christian Schneiderhttp://www.liquid-reality.de
>>>>
>>>> Open Source Architecthttp://www.talend.com
>>>>
>>>> -- -- ------------------ OPS4J - http://www.ops4j.org - 
>>> [email protected] --- You received this message because you are 
>>> subscribed to the Google Groups "OPS4J" group. To unsubscribe from this 
>>> group and stop receiving emails from it, send an email to 
>>> [email protected]. For more options, visit 
>>> https://groups.google.com/d/optout. 
>>>
>>> -- 
>>> Christian Schneiderhttp://www.liquid-reality.de
>>>
>>> Open Source Architecthttp://www.talend.com
>>>
>>> -- -- ------------------ OPS4J - http://www.ops4j.org - 
> [email protected] <javascript:> --- You received this message 
> because you are subscribed to the Google Groups "OPS4J" group. To 
> unsubscribe from this group and stop receiving emails from it, send an 
> email to [email protected] <javascript:>. For more options, 
> visit https://groups.google.com/d/optout. 
>
> -- 
> Christian Schneiderhttp://www.liquid-reality.de
>
> Open Source Architecthttp://www.talend.com
>
>

-- 
-- 
------------------
OPS4J - http://www.ops4j.org - [email protected]

--- 
You received this message because you are subscribed to the Google Groups 
"OPS4J" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to