2013-05-22 2 views
0

Я использую контейнер osgi (virgo) [Я не очень хорош в этом].Добавление зависимостей akka к контейнеру osgi

Я добавил зависимость к моему pom.xml

<dependency> 
    <groupId>com.typesafe.akka</groupId> 
    <artifactId>akka-osgi_2.10</artifactId> 
    <version>2.2-M3</version> 
</dependency> 

Я положил akka-osgi_2.10-2.2-M3.jar моему Lib/развернуть папку на сервере OSGI (для myserver/repository/usr).

Я добавил фиктивный актер на мой код базы:

import akka.actor.UntypedActor; 

public class ManagerActor extends UntypedActor { 
    @Override 
    public void onReceive(Object o) throws Exception { 
     // ... 
    } 
} 

Я строю и начать мое приложение.

И как результат у меня есть следующие исключения в моем журнале (он жалуется на version="0.0.0"):

.. failed. org.eclipse.virgo.kernel.osgi.framework.UnableToSatisfyBundleDependenciesException: Unable to satisfy dependencies of bundle 'com. 
com.mycompnay.mything-security' at version '1.0.1.BUILD-SNAPSHOT': Cannot resolve: com.mycompany.mything-security 
    Resolver report: 
     An Import-Package could not be resolved. Resolver error data <Import-Package: akka.actor; version="0.0.0">. Caused by missing constrai 
nt in bundle <com.mycompany.mything-security_1.0.1.BUILD-SNAPSHOT> 
      constraint: <Import-Package: akka.actor; version="0.0.0"> 

Я иду к моему template.mf файл, который используется для создания окончательного MANIFEST.MF файла. Чтобы указать диапазон версий для AKKA lib, я использую. Помещение туда:

Import-Template: 
akka.actor.*;version="[2.2.0.M3, 2.3)" 

Import-Package: 
akka.actor;version="[2.2.0.M3, 2.3)" 

Затем перестройте и запустите приложение.

Но в консоли он жалуется на AKKA версии (теперь жалуется version="[2.2.0.M3,2.3.0)"):

 An Import-Package could not be resolved. Resolver error data <Import-Package: akka.actor; version="[2.2.0.M3,2.3.0)">. Caused by missi 
ng constraint in bundle <com.mycompany.mything-security_1.0.1.BUILD-SNAPSHOT> 
      constraint: <Import-Package: akka.actor; version="[2.2.0.M3,2.3.0)"> 

Q: что не так?


Также я пытался добавить эту строку: в Import-Bundle:

Import-Bundle: 
... 
com.typesafe.akka.osgi;version="[2.2.0.M3, 2.3)" 

Тогда я его в журнале (теперь он жалуется на com.typesafe.akka.osgi версии):

.. failed. org.eclipse.virgo.kernel.deployer.core.DeploymentException: Unable to satisfy dependencies of bundle 'com.mycompany.mything-security 
' at version '1.0.1.BUILD-SNAPSHOT': Import-Bundle with symbolic name 'com.typesafe.akka.osgi' in version range '[2.2.0.M3, oo)' could not be 
satisfied 

ответ

0

причина была:

мне нужно поставить akka-actor_2.10-2.2-M3.jar (вместе с akka-osgi_2.10-2.2-M3.jar) в мою папку osgi (virgo).

Итак, мы НЕ должны делать это вручную, но с помощью maven (чтобы не пропустить какую-то банку, которая появляется вместе с ожиданием).

Смежные вопросы