I'm trying to create a karaf 4.1.2 feature that installs vaadin 8.1.5. One dependency is com.googlecode.gentyref. The newest version of gentyref I've found is this non-OSGi jar file: https://mvnrepository.com/artifact/com.googlecode.gentyref/gentyref/1.2.0
I've tried to add this jar as a wrap bundle in the feature file: <features xmlns="http://karaf.apache.org/xmlns/features/v1.4.0" name="fildele.application"> <feature name="fildele" description="filedele file sharing web application" version="1.0.0.SNAPSHOT"> <feature prerequisite="true" dependency="false">wrap</feature> <feature prerequisite="false" dependency="false">pax-http-whiteboard</feature> <bundle start-level="80">wrap:mvn:com.googlecode.gentyref/gentyref/1.2.0</bundle> <bundle start-level="80">mvn:no.priv.bang.fildele/fildele.application/1.0.0-SNAPSHOT</bundle> <bundle start-level="80">mvn:com.vaadin/vaadin-shared/8.1.5</bundle> <bundle start-level="80">mvn:com.vaadin/vaadin-server/8.1.5</bundle> <bundle start-level="80">mvn:com.vaadin/vaadin-push/8.1.5</bundle> <bundle start-level="80">mvn:com.vaadin/vaadin-client-compiled/8.1.5</bundle> <bundle start-level="80">mvn:com.vaadin/vaadin-themes/8.1.5</bundle> </feature> </features> But this feature fails in the installation: karaf@root()> feature:repo-add mvn:no.priv.bang.fildele/fildele.application/LATEST/xml/features Adding feature url mvn:no.priv.bang.fildele/fildele.application/LATEST/xml/features karaf@root()> feature:install fildele Error executing command: Unable to resolve root: missing requirement [root] osgi.identity; osgi.identity=fildele; type=karaf.feature; version="[1.0.0.SNAPSHOT,1.0.0.SNAPSHOT]"; filter:="(&(osgi.identity=fildele)(type=karaf.feature)(version>=1.0.0.SNAPSHOT)(version<=1.0.0.SNAPSHOT))" [caused by: Unable to resolve fildele/1.0.0.SNAPSHOT: missing requirement [fildele/1.0.0.SNAPSHOT] osgi.identity; osgi.identity=com.vaadin.server; type=osgi.bundle; version="[8.1.5,8.1.5]"; resolution:=mandatory [caused by: Unable to resolve com.vaadin.server/8.1.5: missing requirement [com.vaadin.server/8.1.5] osgi.wiring.package; filter:="(&(osgi.wiring.package=com.googlecode.gentyref)(version>=1.2.0)(!(version>=2.0.0)))"]] karaf@root()> When I try to install the troublesome jar directly, it doesn't go active: karaf@root()> bundle:install wrap:mvn:com.googlecode.gentyref/gentyref/1.2.0 Bundle ID: 52 karaf@root()> bundle:list START LEVEL 100 , List Threshold: 50 ID | State | Lvl | Version | Name ---+-----------+-----+---------+------------------------------------------------ 28 | Active | 80 | 4.1.2 | Apache Karaf :: OSGi Services :: Event 52 | Installed | 80 | 0 | wrap_mvn_com.googlecode.gentyref_gentyref_1.2.0 karaf@root()> bundle:capabilities 52 Bundle 52 is not resolved. karaf@root()> The manifest.mf of data/cache/bundle52/version0.0 has no imports: Manifest-Version: 1.0 Archiver-Version: Plexus Archiver Bnd-LastModified: 1507232709268 Build-Jdk: 1.7.0_51 Built-By: wouter Bundle-ManifestVersion: 2 Bundle-Name: wrap_mvn_com.googlecode.gentyref_gentyref_1.2.0 Bundle-SymbolicName: wrap_mvn_com.googlecode.gentyref_gentyref_1.2.0 Bundle-Version: 0 Created-By: 1.8.0_141 (Oracle Corporation) Export-Package: com.googlecode.gentyref Generated-By-Ops4j-Pax-From: wrap:mvn:com.googlecode.gentyref/gentyref/1 .2.0 Originally-Created-By: Apache Maven 3.2.1 Require-Capability: osgi.ee;filter:="(&(osgi.ee=JavaSE)(version=1.5))" Tool: Bnd-2.3.0.201405100607 What am I doing wrong? Thanks! - Steinar
