Hi.

Vaadin 8.1.4 uses gentyref version 1.2.0.vaadin1. I included that in my 
feature. Maybe working for 8.1.5 as well.

    <feature name="vaadin-support">
            <feature>http</feature>
            <feature>http-whiteboard</feature>
            <bundle>mvn:org.jsoup/jsoup/1.8.3</bundle>
            <bundle>mvn:com.vaadin.external/gentyref/1.2.0.vaadin1</bundle>
            <bundle 
start-level="75">mvn:com.vaadin/vaadin-shared/${vaadin.version}</bundle>
            <bundle 
start-level="76">mvn:com.vaadin/vaadin-server/${vaadin.version}</bundle>
            
<bundle>mvn:com.vaadin/vaadin-osgi-integration/${vaadin.version}</bundle>
            
<bundle>mvn:com.vaadin/vaadin-client-compiled/${vaadin.version}</bundle>
            <bundle>mvn:com.vaadin/vaadin-themes/${vaadin.version}</bundle>
    </feature>

Regards,
Alexander


>>> 
Good Morning Steiner,

Your bundle doesnt have version specified


Bundle-Version: 0
To fix this you need to add the bundle-version to your wrap like


wrap:mvn:com.googlecode.gentyref/gentyref/1.2.0&Bundle-Version=1.2.0
I hope this helps

Christian

Am 05.10.2017 um 21:48 schrieb Steinar Bang <[email protected]>:



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

Reply via email to