使用Spring OSGi时,无法将BundleActivator解析为类型

时间:2013-08-13 23:17:25

标签: java spring osgi osgi-bundle

我正在尝试使用Spring Dynamic Modules来使用OSGi。下面是我的pom.xml。我已经添加了与OSGi框架相关的所有依赖项,但我仍然以某种方式,我总是得到以下异常 -

BundleActivator cannot be resolved to a type

ServiceRegistration cannot be resolved to a type

下面是我的pom.xml文件 -

<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">
    <modelVersion>4.0.0</modelVersion>

    <groupId>com.spring.osgi.example</groupId>
    <artifactId>HelloWorldService</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <packaging>jar</packaging>

    <name>HelloWorldService</name>
    <url>http://maven.apache.org</url>

    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    </properties>

    <dependencies>
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>3.8.1</version>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>org.springframework.osgi</groupId>
            <artifactId>spring-osgi-core</artifactId>
            <version>1.2.1</version>
        </dependency>
        <dependency>
            <groupId>org.springframework.osgi</groupId>
            <artifactId>spring-osgi-extender</artifactId>
            <version>1.2.1</version>
        </dependency>

        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-context</artifactId>
            <version>3.2.3.RELEASE</version>
        </dependency>

        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-aop</artifactId>
            <version>3.2.3.RELEASE</version>
        </dependency>


        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-beans</artifactId>
            <version>3.2.3.RELEASE</version>
        </dependency>


        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-core</artifactId>
            <version>3.2.3.RELEASE</version>
        </dependency>

        <dependency>
            <groupId>org.springframework.osgi</groupId>
            <artifactId>spring-osgi-io</artifactId>
            <version>1.2.1</version>
        </dependency>

    </dependencies>
</project>

我的pom.xml文件中是否有任何遗漏内容。我正在使用Eclipse Juno

以下是我项目的图片 -

enter image description here

1 个答案:

答案 0 :(得分:3)

将org.osgi:org.osgi.core与提供的范围放在pom.xml中。从此处选择一个版本http://search.maven.org/#search|gav|1|g%3A%22org.osgi%22%20AND%20a%3A%22org.osgi.core%22

相关问题