Próbuję uruchomić jeden z moich paczek, ale jak tylko zacznę go, otrzymuję poniższy wyjątek. Nie jestem pewien, co jest problem.Nie można rozwiązać 1.0: brakujące wymagania [1.0] osgi.wiring.package; (& (Osgi.wiring.package =
org.osgi.framework.BundleException: Unresolved constraint in bundle GoldeneyeModellingFramework [1]: Unable to resolve 1.0: missing requirement [1.0] osgi.wiring.package; (&(osgi.wiring.package=com.host.domain.sharedpersonalize.storageservice)(version>=1.0.0)(!(version>=2.0.0)))
at org.apache.felix.framework.Felix.resolveBundleRevision(Felix.java:3974)
at org.apache.felix.framework.Felix.startBundle(Felix.java:2037)
at org.apache.felix.framework.BundleImpl.start(BundleImpl.java:955)
at org.apache.felix.framework.BundleImpl.start(BundleImpl.java:942)
at com.host.personalize.bullseye.InitializeOSGiFramework.installAndStartBundle(InitializeOSGiFramework.java:217)
at com.host.personalize.bullseye.InitializeOSGiFramework.getBundlesInformation(InitializeOSGiFramework.java:167)
at com.host.personalize.bullseye.InitializeOSGiFramework$1.run(InitializeOSGiFramework.java:92)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:452)
at java.util.concurrent.FutureTask$Sync.innerRunAndReset(FutureTask.java:328)
at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:161)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$101(ScheduledThreadPoolExecutor.java:109)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.runPeriodic(ScheduledThreadPoolExecutor.java:192)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:216)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:897)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:919)
at java.lang.Thread.run(Thread.java:736)
powiem ci jak ja robi to- ja uruchomiły ramy OSGi wykonując ten tutorial i działa dobrze, ale jak tylko zacznę zawiniątko, GoldeneyeModellingFramework-
for (Bundle bundle : installedBundles) {
bundle.start();
}
i Używam Zależność poniżej w moim głównym projekcie, który uruchamia framework/kontener OSGi:
<dependency>
<groupId>org.apache.felix</groupId>
<artifactId>org.apache.felix.framework</artifactId>
<version>4.2.1</version>
</dependency>
<dependency>
<groupId>org.ops4j.pax.url</groupId>
<artifactId>pax-url-mvn</artifactId>
<version>1.3.6</version>
</dependency>
To zawsze daje mi powyższy wyjątek. Pakiet GoldeneyeModellingFramework
zależy od projektu maven GoldeneyeStorageService
, który obejmuje ten pakiet com.host.domain.sharedpersonalize.storageservice
.
Poniżej znajduje się plik Manifest.MF
dla GoldenModellingFramework
wiązki:
Manifest-Version: 1.0
Bnd-LastModified: 1377298131182
Build-Jdk: 1.6.0_26
Built-By: rjamal
Bundle-Activator: com.host.personalize.goldeneye.framework.activator.Activator
Bundle-Description: Managed dependencies and plugins across all Raptor applications.
Bundle-ManifestVersion: 2
Bundle-Name: GoldeneyeModellingFramework
Bundle-SymbolicName: GoldeneyeModellingFramework
Bundle-Version: 1.0.0
Created-By: Apache Maven Bundle Plugin
Export-Package: com.host.personalize.goldeneye.framework.activator;us
es:="org.osgi.framework,com.host.personalize.goldeneye.modelling.fra
mework,org.osgi.util.tracker";version="1.0.0",com.host.personalize.
goldeneye.modelling.framework;uses:="com.host.soaframework.common.except
ions,org.osgi.framework,com.host.domain.sharedpersonalize.storagese
rvice";version="1.0.0"
Import-Package: com.host.domain.sharedpersonalize.storageservice;ver
sion="[1.0,2)",com.host.soaframework.common.exceptions;version="[1.4,2)
",org.osgi.framework;version="[1.6,2)",org.osgi.util.tracker;version="[
1.5,2)"
Originally-Created-By: Apache Maven Bundle Plugin
ServicesURLStrategyVersion: 1.0.0-RELEASE
Tool: Bnd-1.50.0
X-Raptor-Source-Dir: S:\GitViews\GoldeneyeStream\GoldeneyeModellingFram
ework/src/main/webapp,S:\GitViews\GoldeneyeStream\GoldeneyeModellingFr
amework/src/main/resources,S:\GitViews\GoldeneyeStream\GoldeneyeModell
ingFramework
A poniżej jest plik pom.xml
dla GoldeneyeModellingFramework
wiązki:
<?xml version="1.0" encoding="UTF-8"?>
<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">
<!-- POM Information about the Project -->
<modelVersion>4.0.0</modelVersion>
<groupId>com.host.personalize.goldeneye.modelling.framework</groupId>
<artifactId>GoldeneyeModellingFramework</artifactId>
<version>1.0.0</version>
<!-- Packing Type is bundle for OSGI Library Bundle -->
<packaging>bundle</packaging>
<dependencies>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>org.springframework.beans</artifactId>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>org.springframework.context</artifactId>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>org.springframework.core</artifactId>
</dependency>
<dependency>
<groupId>org.apache.servicemix.bundles</groupId>
<artifactId>org.apache.servicemix.bundles.cglib</artifactId>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.osgi</groupId>
<artifactId>org.osgi.core</artifactId>
<version>4.3.0</version><!--$NO-MVN-MAN-VER$ -->
<type>jar</type>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.osgi</groupId>
<artifactId>org.osgi.compendium</artifactId>
<version>4.3.0</version><!--$NO-MVN-MAN-VER$ -->
<type>jar</type>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>com.host.personalize.goldeneye</groupId>
<artifactId>GoldeneyeStorageService</artifactId>
<version>1.0.0</version>
</dependency>
</dependencies>
<!-- Build Configration -->
<build>
<plugins>
<!-- Apache Felix Bundle Plugin - For Generation of Manifest after Compile
phase -->
<plugin>
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
<!-- Configuration for generating the Manifest.mf -->
<configuration>
<manifestLocation>src/main/resources/META-INF</manifestLocation>
<!-- Manifest Headers which need to customized during manifest generation -->
<instructions>
<Bundle-SymbolicName>GoldeneyeModellingFramework</Bundle-SymbolicName>
<Bundle-Activator>com.host.personalize.goldeneye.framework.activator.Activator</Bundle-Activator>
</instructions>
</configuration>
</plugin>
</plugins>
</build>
<!-- Configuration of repositories for dependency resolution -->
<repositories>
<!-- Raptor Bundles Repository -->
<!-- This is needed to locate the Raptor Parent project. Other repositories
come from the parent. -->
<repository>
<id>releases</id>
<url>http://nxraptor/content/repositories/releases/</url>
<releases>
</releases>
<snapshots>
<enabled>false</enabled>
</snapshots>
</repository>
<repository>
<id>thirdparty</id>
<url>http://nxraptor/content/repositories/thirdparty/</url>
<releases>
</releases>
<snapshots>
<enabled>false</enabled>
</snapshots>
</repository>
</repositories>
</project>
Daj mi znać, jeśli potrzebujesz żadnych innych plików do GoldeneyeStorageService
Maven projekt. Nie wiem, jak rozwiązać ten problem. Czy ktoś może mi w tym pomóc?
Niektóre Aktualizacja: -
Poniżej znajduje się plik MANIFEST.MF dla GoldeneyeStorageService
projektu-
Manifest-Version: 1.0
Bnd-LastModified: 1377333824248
Build-Jdk: 1.6.0_26
Built-By: rjamal
Bundle-Description: Managed dependencies and plugins across all Raptor a
pplications.
Bundle-ManifestVersion: 2
Bundle-Name: GoldenlseyeStorageService
Bundle-SymbolicName: GoldenlseyeStorageService
Bundle-Version: 1.0.0
Created-By: Apache Maven Bundle Plugin
Export-Package: com.host.domain.sharedpersonalize.storageservice;use
s:="com.host.soaframework.common.exceptions,com.host.marketplace.servic
es.storageservice,com.host.personalize.services.storage.consumer.ge
n,com.host.personalize.services.storage.consumer,com.host.soaframew
ork.sif.service,com.host.marketplace.services,com.host.kernel.logger";v
ersion="1.0.0",com.host.marketplace.services.storageservice;uses:="java
x.xml.bind.annotation,com.host.marketplace.services,javax.activation";v
ersion="1.0.0",com.host.personalize.services.storage.consumer;uses:
="javax.xml.ws,com.host.marketplace.services.storageservice";version="1
.0.0",com.host.personalize.services.storage.consumer.gen;uses:="com
.host.soaframework.common.exceptions,com.host.personalize.services.
storage.consumer,com.host.soaframework.sif.impl.internal.service,com.eb
ay.soaframework.sif.service,javax.xml.ws,com.host.marketplace.services.
storageservice,com.host.soaframework.common.types,com.host.soaframework
.common.impl.internal.schema,javax.xml.namespace,com.host.soaframework.
common.registration";version="1.0.0"
Import-Package: com.host.kernel.logger;version="[1.19,2)",com.host.marke
tplace.services;version="[1.7,2)",com.host.soaframework.common.exceptio
ns;version="[1.4,2)",com.host.soaframework.common.impl.internal.schema;
version="[1.4,2)",com.host.soaframework.common.registration;version="[1
.4,2)",com.host.soaframework.common.types;version="[1.4,2)",com.host.so
aframework.sif.impl.internal.service;version="[1.4,2)",com.host.soafram
ework.sif.service;version="[1.4,2)",javax.activation,javax.xml.bind.ann
otation,javax.xml.namespace,javax.xml.ws
ServicesURLStrategyVersion: 1.0.0-RELEASE
Tool: Bnd-1.50.0
X-Raptor-Source-Dir: S:\GitViews\GoldenlseyeStream\GoldenlseyeStorageServic
e/src/main/webapp,S:\GitViews\GoldenlseyeStream\GoldenlseyeStorageService/
src/main/resources,S:\GitViews\GoldenlseyeStream\GoldenlseyeStorageService
Dziękuję Neilowi za sugestię. Przez włączenie, mam na myśli, używam tego pakietu w projekcie GoldeneyeStorageService. Zaktualizowałem swoje pytanie za pomocą pliku MANIFEST.MF dla projektu GoldeneyeStorageService. I myślę, że pakiet jest już w nagłówku Export-Package w projekcie GoldeneyeStorageService ... Jeśli mam rację, mówisz, że ten pakiet powinien zostać wyeksportowany do pliku MANIFEST.MF GoldeneyeStorageService? Popraw mnie Jeśli się mylę .. – AKIWEB
Tak. Ten manifest wygląda dobrze, od pobieżnego skanu. Czy ten pakiet jest zainstalowany i rozwiązany w ramach? –
Myślę, że odpowiedź na twoje pytanie będzie No. Więc to znaczy, muszę najpierw zainstalować pakiet GoldeneyeStorageService, a następnie powinienem spróbować zainstalować GoldeneyeModellingFramework? Bcoz teraz, nie instaluję pakietu GoldeneyeStorageService i używam go jako zależnej od maven w pliku pom.xml GoldeneyeModellingFramework .. I jeśli najpierw spróbuję zainstalować projekt GoldeneyeStorageService, to otrzymuję ten sam wyjątek dla różnych pakietów. – AKIWEB