Hi Andreas, thanks for the pointer to the Spring versions. Something weird is going on here. I have no direct dependencies to Spring. I depend on camel-spring 2.16.0, which has Maven dependencies to Spring 4.1.6.RELEASE; camel-spring-ws which depends on Spring 4.1.6.RELEASE and spring-ws-core 2.2.1 and spring-ws-support 2.2.1, which in turn depend on Spring 4.0.9.RELEASE. activemq-camel 5.12.1 which depends on camel-spring 2.15.3, which is omitted in the Maven world in favor of camel-spring 2.16.0
Deploying my features that depend on camel-spring(-ws) 2.16.0 and activemq-camel 5.12.1 in Karaf 4, using the respective Camel 2.16.0 and ActiveMQ Karaf features as dependencies in my KAR feature repository, leaves me with Spring 3.2.14.RELEASE_1 loaded. No other version is present: karaf@root()> feature:install pep objc[31186]: Class JavaLaunchHelper is implemented in both /Library/Java/JavaVirtualMachines/jdk1.8.0_40.jdk/Contents/Home/bin/java and /Library/Java/JavaVirtualMachines/jdk1.8.0_40.jdk/Contents/Home/jre/lib/libinstrument.dylib. One of the two will be used. Which one is undefined. karaf@root()> feature:install pas-webservice-patient karaf@root()> feature:install pas-webservice-hp karaf@root()> feature:install graph-manager karaf@root()> feature:list | grep -i "spring.*started" spring-dm | 1.2.1 | | Started | spring-4.0.3 | Spring DM support spring | 3.2.14.RELEASE_1 | | Started | spring-4.0.3 | Spring 3.2.x support spring-jms | 3.2.14.RELEASE_1 | | Started | spring-4.0.3 | Spring 3.2.x JMS support spring-oxm | 3.2.14.RELEASE_1 | | Started | spring-4.0.3 | Spring 3.2.x OXM support spring-tx | 3.2.14.RELEASE_1 | | Started | spring-4.0.3 | Spring 3.2.x Transaction (TX) support spring-web | 3.2.14.RELEASE_1 | | Started | spring-4.0.3 | Spring 3.2.x Web support camel-spring | 2.16.0 | | Started | camel-2.16.0 | camel-spring-ws | 2.16.0 | | Started | camel-2.16.0 | karaf@root()> If I now uninstall any one of my features, then this triggers the install of spring 3.1.4!? I use the graph-manager to demonstrate, but the behavior for the web-service features is the same. karaf@root()> feature:uninstall graph-manager karaf@root()> feature:list | grep -i "spring.*started" spring-dm | 1.2.1 | | Started | spring-4.0.3 | Spring DM support spring | 3.1.4.RELEASE | | Started | spring-4.0.3 | Spring 3.1.x support spring | 3.2.14.RELEASE_1 | | Started | spring-4.0.3 | Spring 3.2.x support spring-jms | 3.2.14.RELEASE_1 | | Started | spring-4.0.3 | Spring 3.2.x JMS support spring-oxm | 3.2.14.RELEASE_1 | | Started | spring-4.0.3 | Spring 3.2.x OXM support spring-tx | 3.2.14.RELEASE_1 | | Started | spring-4.0.3 | Spring 3.2.x Transaction (TX) support spring-web | 3.2.14.RELEASE_1 | | Started | spring-4.0.3 | Spring 3.2.x Web support camel-spring | 2.16.0 | | Started | camel-2.16.0 | camel-spring-ws | 2.16.0 | | Started | camel-2.16.0 | karaf@root()> To add to the weirdness, re-installing the graph-manager feature uninstalls Spring 3.1.4 again: karaf@root()> feature:install graph-manager karaf@root()> feature:list | grep -i "spring.*started" spring-dm | 1.2.1 | | Started | spring-4.0.3 | Spring DM support spring | 3.2.14.RELEASE_1 | | Started | spring-4.0.3 | Spring 3.2.x support spring-jms | 3.2.14.RELEASE_1 | | Started | spring-4.0.3 | Spring 3.2.x JMS support spring-oxm | 3.2.14.RELEASE_1 | | Started | spring-4.0.3 | Spring 3.2.x OXM support spring-tx | 3.2.14.RELEASE_1 | | Started | spring-4.0.3 | Spring 3.2.x Transaction (TX) support spring-web | 3.2.14.RELEASE_1 | | Started | spring-4.0.3 | Spring 3.2.x Web support camel-spring | 2.16.0 | | Started | camel-2.16.0 | camel-spring-ws | 2.16.0 | | Started | camel-2.16.0 | karaf@root()> The graph-manager feature by itself has NO dependency on Spring(*) at all! Starting with a clean Karaf: karaf@root()> feature:install graph-manager objc[31343]: Class JavaLaunchHelper is implemented in both /Library/Java/JavaVirtualMachines/jdk1.8.0_40.jdk/Contents/Home/bin/java and /Library/Java/JavaVirtualMachines/jdk1.8.0_40.jdk/Contents/Home/jre/lib/libinstrument.dylib. One of the two will be used. Which one is undefined. karaf@root()> feature:list | grep -i "spring.*started" karaf@root()> (*) It had a dependency to camel-spring 2.16.0 until 30 minutes ago, but that is a legacy left-over that I now removed for this test. Ralf -- View this message in context: http://karaf.922171.n3.nabble.com/KAR-deployment-in-Karaf-4-0-3-fails-with-varying-errors-tp4043649p4043719.html Sent from the Karaf - User mailing list archive at Nabble.com.
