You have to add these packages in the Import-Package tag as they are
required by the bnd tool. This is due to the fact that you define your self
the packages to be used and does not let the tool to discover them using *
symbol

On Mon, Aug 13, 2012 at 5:34 PM, Julien Martin <[email protected]> wrote:

> Charles,
>
> I see... Do you see anything wrong with my pom? It does not compile with
> the following error:
>
> *[ERROR] Error building bundle osgi.org.codehaus.btm:btm:bundle:2.1.2 :
> Unresolved references to [javax.crypto, javax.crypto.spec, javax.jms,*
>
> Do you have any idea why it requires JMS for instance??
>
> Regards,
> J.
>
>
> 2012/8/13 Charles Moulliard <[email protected]>
>
>> This is because the maven bundle tool (= bnd) will calculate and add
>> missing packages. So don't worry about that for the moment.
>>
>>
>> On Mon, Aug 13, 2012 at 5:22 PM, Julien Martin <[email protected]> wrote:
>>
>>> Hello,
>>>
>>> I am having problem understanding how to configure the shade plugin:
>>>
>>> What I have in the actual manifest does not match what I have specified
>>> in the POM's plugin i.e. there are many more entries in the actual
>>>  manifest than there are in the POM's plugin...
>>>
>>> Any idea?
>>>
>>> Regards,
>>>
>>> Julien.
>>>
>>> Here is my POM:
>>>
>>> <project xmlns="http://maven.apache.org/POM/4.0.0"; xmlns:xsi="
>>> http://www.w3.org/2001/XMLSchema-instance"; xsi:schemaLocation="
>>> http://maven.apache.org/POM/4.0.0
>>> http://maven.apache.org/xsd/maven-4.0.0.xsd";>
>>>  <modelVersion>4.0.0</modelVersion>
>>> <groupId>osgi.org.codehaus.btm</groupId>
>>>  <artifactId>btm</artifactId>
>>> <version>2.1.2</version>
>>>  <packaging>bundle</packaging>
>>> <dependencies>
>>> <dependency>
>>>  <groupId>org.codehaus.btm</groupId>
>>> <artifactId>btm</artifactId>
>>>  <version>2.1.2</version>
>>> <optional>true</optional>
>>>  </dependency>
>>> </dependencies>
>>> <build>
>>>  <defaultGoal>install</defaultGoal>
>>> <plugins>
>>> <plugin>
>>>  <groupId>org.apache.maven.plugins</groupId>
>>> <artifactId>maven-shade-plugin</artifactId>
>>>  <version>1.1</version>
>>> <executions>
>>> <execution>
>>>  <phase>package</phase>
>>> <goals>
>>> <goal>shade</goal>
>>>  </goals>
>>> <configuration>
>>> <artifactSet>
>>>  <includes>
>>> <include>org.codehaus.btm:btm</include>
>>>  </includes>
>>> </artifactSet>
>>> <filters>
>>>  <filter>
>>> <artifact>org.codehaus.btm:btm</artifact>
>>>  <excludes>
>>> <exclude>**</exclude>
>>> </excludes>
>>>  </filter>
>>> </filters>
>>> <promoteTransitiveDependencies>true</promoteTransitiveDependencies>
>>>  <createDependencyReducedPom>true</createDependencyReducedPom>
>>> </configuration>
>>>  </execution>
>>> </executions>
>>> </plugin>
>>>  <plugin>
>>> <groupId>org.apache.felix</groupId>
>>> <artifactId>maven-bundle-plugin</artifactId>
>>>  <version>2.1.0</version>
>>> <extensions>true</extensions>
>>>  <configuration>
>>> <instructions>
>>>   <Bundle-SymbolicName>osgi.org.codehaus.btm</Bundle-SymbolicName>
>>>   <Export-Package>bitronix.tm.resource.jdbc,bitronix.tm
>>> ,bitronix.tm.internal,bitronix.tm.journal,bitronix.tm.recovery,bitronix.tm.resource,bitronix.tm.resource.common,bitronix.tm.resource.jdbc.lrc,bitronix.tm.timer,bitronix.tm.twopc,bitronix.tm.twopc.executor,bitronix.tm.utils</Export-Package>
>>>   <Import-Package>com.mysql.jdbc.jdbc2.optional</Import-Package>
>>> </instructions>
>>>   <unpackBundle>true</unpackBundle>
>>> </configuration>
>>>  </plugin>
>>> </plugins>
>>> </build>
>>>
>>> </project>
>>>
>>> 2012/8/13 Charles Moulliard <[email protected]>
>>>
>>>> It is time now that you discover the maven-bundle-plugin in charge to
>>>> generate properly the MANIFEST.mf file containing bundle instructions (
>>>> http://felix.apache.org/site/apache-felix-maven-bundle-plugin-bnd.html&;
>>>> http://karaf.apache.org/manual/2.2.8/developers-guide/creating-bundles.html
>>>> )
>>>>
>>>> Add this package into the Import-Package tag
>>>>
>>>>
>>>>
>>>>
>>>> On Mon, Aug 13, 2012 at 4:11 PM, Julien Martin <[email protected]>wrote:
>>>>
>>>>> Thanks again Charles!
>>>>>
>>>>> No it does not import it (see output):
>>>>>
>>>>> *karaf@root> packages:imports 79*
>>>>> *System Bundle (0): javax.crypto; version=0.0.0*
>>>>> *System Bundle (0): javax.crypto.spec; version=0.0.0*
>>>>> *System Bundle (0): javax.naming; version=0.0.0*
>>>>> *System Bundle (0): javax.naming.spi; version=0.0.0*
>>>>> *System Bundle (0): javax.rmi; version=0.0.0*
>>>>> *System Bundle (0): javax.sql; version=0.0.0*
>>>>> *System Bundle (0): javax.swing; version=0.0.0*
>>>>> *System Bundle (0): javax.swing.border; version=0.0.0*
>>>>> *System Bundle (0): javax.swing.event; version=0.0.0*
>>>>> *System Bundle (0): javax.swing.table; version=0.0.0*
>>>>> *System Bundle (0): javax.swing.tree; version=0.0.0*
>>>>> *OPS4J Pax Logging - API (4): org.slf4j; version=1.6.4*
>>>>> *OPS4J Pax Logging - API (4): org.slf4j; version=1.6.1*
>>>>> *OPS4J Pax Logging - API (4): org.slf4j; version=1.5.11*
>>>>> *OPS4J Pax Logging - API (4): org.slf4j; version=1.4.3*
>>>>> *jta (70): javax.transaction; version=0.0.0*
>>>>> *jta (70): javax.transaction.xa; version=0.0.0*
>>>>>
>>>>> How do I configure it so that is properly imports the required
>>>>> packages?
>>>>> Regards,
>>>>> J.
>>>>>
>>>>> 2012/8/13 Charles Moulliard <[email protected]>
>>>>>
>>>>>> Can you check please that your bundle 79 imports well this package 
>>>>>> (*com.mysql.jdbc.jdbc2.optional)
>>>>>> by using this command ?*
>>>>>> *
>>>>>> *
>>>>>> *packages:imports 79
>>>>>> *
>>>>>>
>>>>>> On Mon, Aug 13, 2012 at 4:03 PM, Julien Martin <[email protected]>wrote:
>>>>>>
>>>>>>> Hello,
>>>>>>>
>>>>>>> I've successfully managed for Karaf to pick up my Spring
>>>>>>> configuration files. However, I get now a ClassNotFoundException:
>>>>>>>
>>>>>>> *Caused by: java.lang.ClassNotFoundException:
>>>>>>> com.mysql.jdbc.jdbc2.optional.MysqlXADataSource not found by btm*[79]
>>>>>>>         at
>>>>>>> org.apache.felix.framework.ModuleImpl.findClassOrResourceByDelegation(ModuleImpl.java:787)
>>>>>>>         at
>>>>>>> org.apache.felix.framework.ModuleImpl.access$400(ModuleImpl.java:71)
>>>>>>>         at
>>>>>>> org.apache.felix.framework.ModuleImpl$ModuleClassLoader.loadClass(ModuleImpl.java:1768)
>>>>>>>         at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
>>>>>>>         at java.lang.Class.forName0(Native Method)
>>>>>>>         at java.lang.Class.forName(Class.java:169)
>>>>>>>         at
>>>>>>> bitronix.tm.utils.ClassLoaderUtils.loadClass(ClassLoaderUtils.java:63)
>>>>>>>         at
>>>>>>> bitronix.tm.resource.common.XAPool.createXAFactory(XAPool.java:300)
>>>>>>>         at bitronix.tm.resource.common.XAPool.<init>(XAPool.java:63)
>>>>>>>         at
>>>>>>> bitronix.tm.resource.jdbc.PoolingDataSource.buildXAPool(PoolingDataSource.java:89)
>>>>>>>         at
>>>>>>> bitronix.tm.resource.jdbc.PoolingDataSource.init(PoolingDataSource.java:76)
>>>>>>>         ... 21 more
>>>>>>>
>>>>>>> What strikes me is that my Mysql driver is properly installed into
>>>>>>> Karaf (see bold line below):
>>>>>>>
>>>>>>> START LEVEL 100 , List Threshold: 50
>>>>>>>    ID   State         Blueprint      Spring    Level  Name
>>>>>>> [  50] [Active     ] [            ] [       ] [   80] Spring
>>>>>>> Integration Core (2.1.3.RELEASE)
>>>>>>> [  51] [Active     ] [            ] [       ] [   80] commons-dbcp
>>>>>>> (1.2.2)
>>>>>>> [  52] [Active     ] [            ] [       ] [   80] OSGi R4 Core
>>>>>>> Bundle (4.1)
>>>>>>> [  53] [Active     ] [            ] [       ] [   80] Spring Test
>>>>>>> (3.0.7.RELEASE)
>>>>>>> [  54] [Active     ] [            ] [       ] [   80] c3p0 (0.9.1.2)
>>>>>>> [  55] [Active     ] [            ] [       ] [   80] Commons IO
>>>>>>> (2.0.1)
>>>>>>> [  56] [Active     ] [            ] [       ] [   80] aopalliance
>>>>>>> (1.0)
>>>>>>> [  57] [Active     ] [            ] [       ] [   80] xstream (1.3)
>>>>>>> [  58] [Active     ] [            ] [       ] [   80] Spring
>>>>>>> Expression Language (3.0.7.RELEASE)
>>>>>>> [  59] [Active     ] [            ] [       ] [   80] Spring Context
>>>>>>> Support (3.0.7.RELEASE)
>>>>>>> [  61] [Active     ] [            ] [       ] [   80] Spring
>>>>>>> Integration File Support (2.1.3.RELEASE)
>>>>>>> [  62] [Resolved   ] [            ] [       ] [   80] slf4j-log4j12
>>>>>>> (1.6.1)
>>>>>>>                                        Hosts: 69
>>>>>>> [  63] [Active     ] [            ] [       ] [   80] Spring
>>>>>>> Object/XML Mapping (3.0.7.RELEASE)
>>>>>>> [  64] [Active     ] [            ] [       ] [   80] Spring JDBC
>>>>>>> (3.0.7.RELEASE)
>>>>>>> [  65] [Active     ] [            ] [       ] [   80]
>>>>>>> commons-collections (3.2)
>>>>>>> [  66] [Active     ] [            ] [       ] [   80] Spring Beans
>>>>>>> (3.0.7.RELEASE)
>>>>>>> [  67] [Active     ] [            ] [       ] [   80] Spring ASM
>>>>>>> (3.0.7.RELEASE)
>>>>>>> [  68] [Active     ] [            ] [       ] [   80] junit (4.10)
>>>>>>> [  69] [Active     ] [            ] [       ] [   80] slf4j-api
>>>>>>> (1.6.1)
>>>>>>>                                        Fragments: 62
>>>>>>> [  70] [Active     ] [            ] [       ] [   80] jta (1.1)
>>>>>>> [  71] [Active     ] [            ] [       ] [   80] Spring Batch
>>>>>>> Infrastructure (2.1.8.RELEASE)
>>>>>>> [  72] [Active     ] [            ] [       ] [   80] Spring Batch
>>>>>>> Test (2.1.8.RELEASE)
>>>>>>> [  73] [Active     ] [            ] [       ] [   80] xpp3_min
>>>>>>> (1.1.0.4c)
>>>>>>> [  74] [Active     ] [            ] [       ] [   80] jcl-over-slf4j
>>>>>>> (1.6.1)
>>>>>>> [  75] [Active     ] [            ] [       ] [   80] hamcrest-core
>>>>>>> (1.1)
>>>>>>> *[  76] [Active     ] [            ] [       ] [   80] Sun
>>>>>>> Microsystems' JDBC Driver for MySQL (5.1.18)*
>>>>>>> [  77] [Active     ] [            ] [       ] [   80] commons-pool
>>>>>>> (1.3)
>>>>>>> [  78] [Active     ] [            ] [       ] [   80] Spring
>>>>>>> Transaction (3.0.7.RELEASE)
>>>>>>> [  79] [Active     ] [            ] [       ] [   80] btm (2.1.2)
>>>>>>> [  80] [Active     ] [            ] [       ] [   80] Spring Batch
>>>>>>> Integration (1.2.1.RELEASE)
>>>>>>> [  81] [Active     ] [            ] [       ] [   80] Spring AOP
>>>>>>> (3.0.7.RELEASE)
>>>>>>> [  82] [Active     ] [            ] [       ] [   80] Spring Context
>>>>>>> (3.0.7.RELEASE)
>>>>>>> [  83] [Active     ] [            ] [       ] [   80] jettison (1.1)
>>>>>>> [  84] [Active     ] [            ] [       ] [   80] Spring Core
>>>>>>> (3.0.7.RELEASE)
>>>>>>> [  85] [Active     ] [            ] [       ] [   80] Spring Batch
>>>>>>> Core (2.1.8.RELEASE)
>>>>>>> [  93] [Active     ] [            ] [Failed ] [   80]
>>>>>>> spring-batch-demo-trc (1.0.0.SNAPSHOT)
>>>>>>>
>>>>>>> Can anyone please help?
>>>>>>>
>>>>>>> Regards,
>>>>>>>
>>>>>>> J.
>>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> --
>>>>>> Charles Moulliard
>>>>>> Apache Committer / Sr. Pr. Consultant at FuseSource.com
>>>>>> Twitter : @cmoulliard
>>>>>> Blog : http://cmoulliard.blogspot.com
>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>
>>>>
>>>> --
>>>> Charles Moulliard
>>>> Apache Committer / Sr. Pr. Consultant at FuseSource.com
>>>> Twitter : @cmoulliard
>>>> Blog : http://cmoulliard.blogspot.com
>>>>
>>>>
>>>>
>>>
>>
>>
>> --
>> Charles Moulliard
>> Apache Committer / Sr. Pr. Consultant at FuseSource.com
>> Twitter : @cmoulliard
>> Blog : http://cmoulliard.blogspot.com
>>
>>
>>
>


-- 
Charles Moulliard
Apache Committer / Sr. Pr. Consultant at FuseSource.com
Twitter : @cmoulliard
Blog : http://cmoulliard.blogspot.com

Reply via email to