Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/maven/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
HttpClient maven依赖性问题;缺少要求[175.0]osgi.wiring.package;(osgi.willing.package=org.apache.http)";_Maven_Osgi_Apache Httpclient 4.x_Osgi Bundle_Onos - Fatal编程技术网

HttpClient maven依赖性问题;缺少要求[175.0]osgi.wiring.package;(osgi.willing.package=org.apache.http)";

HttpClient maven依赖性问题;缺少要求[175.0]osgi.wiring.package;(osgi.willing.package=org.apache.http)";,maven,osgi,apache-httpclient-4.x,osgi-bundle,onos,Maven,Osgi,Apache Httpclient 4.x,Osgi Bundle,Onos,我正在尝试将httpclient添加到我的maven项目中,但我没有做到这一点 我已经添加了httpcore,commons编解码器和commons日志,但它不起作用 这就是我得到的错误: 这是我的POM文件: <dependency> <groupId>org.apache.felix</groupId> <artifactId>org.apache.felix.scr.annotations</a

我正在尝试将
httpclient
添加到我的maven项目中,但我没有做到这一点

我已经添加了
httpcore
commons编解码器
commons日志
,但它不起作用

这就是我得到的错误:

这是我的POM文件:

     <dependency>
        <groupId>org.apache.felix</groupId>
        <artifactId>org.apache.felix.scr.annotations</artifactId>
        <version>1.9.8</version>
        <scope>provided</scope>
    </dependency>


    <dependency>
        <groupId>org.glassfish</groupId>
        <artifactId>javax.json</artifactId>
        <version>1.0.4</version>
    </dependency>
    <dependency>
        <groupId>commons-logging</groupId>
        <artifactId>commons-logging</artifactId>
        <version>1.1.1</version>
    </dependency>

    <dependency>
        <groupId>commons-codec</groupId>
        <artifactId>commons-codec</artifactId>
        <version>1.9</version>
    </dependency>


    <dependency>
        <groupId>org.apache.httpcomponents</groupId>
        <artifactId>httpclient</artifactId>
        <version>4.5</version>
    </dependency>

    <dependency>
        <groupId>org.apache.httpcomponents</groupId>
        <artifactId>httpcore</artifactId>
        <version>4.4.1</version>
    </dependency>



</dependencies>

<build>
    <plugins>

        <plugin>
            <groupId>org.apache.felix</groupId>
            <artifactId>maven-bundle-plugin</artifactId>
            <extensions>true</extensions>
            <configuration>
                <instructions>
                    <Bundle-SymbolicName>${project.artifactId}</Bundle-SymbolicName>
                    <Import-Package>*, !javax.json</Import-Package>
                </instructions>
            </configuration>
        </plugin>

    </plugins>
</build>


org.apache.felix
org.apache.felix.scr.annotations
1.9.8
假如
玻璃鱼
javax.json
1.0.4
公用记录
公用记录
1.1.1
通用编解码器
通用编解码器
1.9
org.apache.httpcomponents
httpclient
4.5
org.apache.httpcomponents
httpcore
4.4.1
org.apache.felix
maven捆绑插件
真的
${project.artifactId}
*, !javax.json

我远不是一个专业的专家,所以问题可能很简单,但是我尝试了很多事情都没有成功。如果有人有想法,我正在听。

您正在部署一个OSGi捆绑包,它需要来自其他捆绑包的包(
org.apache.http
)。但是这些
org.apache.httpcomponents
依赖项可能只是普通的JAR,而不是OSGi包。只需尝试使用
org.apache.httpcomponents:httpclient-osgi
而不是普通的
httpclient
即可。根据它的打包方式,还可以删除其他
org.apache.httpcomponents
deps。我尝试使用org.apache.httpcomponents:httpclient-osgi,包括org.apache.httpcomponents:httpcore-osgi和不包括org.apache.httpcomponents:httpcore-osgi。我还尝试使用这两个组件并添加org.apache.httpcomponents:httpclient缓存。所有这些都不起作用,我仍然有相同的错误,您在哪个容器中部署捆绑包?经过一些挖掘,我发现:“您需要[HttpClient OSGI和]HttpCore OSGI捆绑包,以及导出Commons日志API的捆绑包,以满足HttpClient OSGI捆绑包的必要依赖性。”但是我不知道如何包含一个导出commons日志的包,因为您正在部署一个OSGi包,它需要来自其他包的包(
org.apache.http
)。但是这些
org.apache.httpcomponents
依赖项可能只是普通的JAR,而不是OSGi包。只需尝试使用
org.apache.httpcomponents:httpclient-osgi
而不是普通的
httpclient
即可。根据它的打包方式,还可以删除其他
org.apache.httpcomponents
deps。我尝试使用org.apache.httpcomponents:httpclient-osgi,包括org.apache.httpcomponents:httpcore-osgi和不包括org.apache.httpcomponents:httpcore-osgi。我还尝试使用这两个组件并添加org.apache.httpcomponents:httpclient缓存。所有这些都不起作用,我仍然有相同的错误,您在哪个容器中部署捆绑包?经过一些挖掘,我发现:“您需要[HttpClient OSGI和]HttpCore OSGI捆绑包,以及导出Commons日志API的捆绑包,以满足HttpClient OSGI捆绑包的必要依赖性。”但我不知道如何包含导出commons日志API的捆绑包
     <dependency>
        <groupId>org.apache.felix</groupId>
        <artifactId>org.apache.felix.scr.annotations</artifactId>
        <version>1.9.8</version>
        <scope>provided</scope>
    </dependency>


    <dependency>
        <groupId>org.glassfish</groupId>
        <artifactId>javax.json</artifactId>
        <version>1.0.4</version>
    </dependency>
    <dependency>
        <groupId>commons-logging</groupId>
        <artifactId>commons-logging</artifactId>
        <version>1.1.1</version>
    </dependency>

    <dependency>
        <groupId>commons-codec</groupId>
        <artifactId>commons-codec</artifactId>
        <version>1.9</version>
    </dependency>


    <dependency>
        <groupId>org.apache.httpcomponents</groupId>
        <artifactId>httpclient</artifactId>
        <version>4.5</version>
    </dependency>

    <dependency>
        <groupId>org.apache.httpcomponents</groupId>
        <artifactId>httpcore</artifactId>
        <version>4.4.1</version>
    </dependency>



</dependencies>

<build>
    <plugins>

        <plugin>
            <groupId>org.apache.felix</groupId>
            <artifactId>maven-bundle-plugin</artifactId>
            <extensions>true</extensions>
            <configuration>
                <instructions>
                    <Bundle-SymbolicName>${project.artifactId}</Bundle-SymbolicName>
                    <Import-Package>*, !javax.json</Import-Package>
                </instructions>
            </configuration>
        </plugin>

    </plugins>
</build>