在Pom文件中将jar添加到apache felix?

发布于 2024-10-15 16:40:06 字数 982 浏览 9 评论 0 原文

如何将 jar 添加到 Apache Felix 中的包中?

我正在使用 Maven,通过 maven-bundle-plugin 来管理 OBR 中的包。

但我不确定在哪里声明 POM 中对 jar 的依赖关系,以便 maven 正确地将其编译到最终的包中。

这是我的插件在 pom 中的样子:

<plugin>
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
<version>2.1.0</version>
<extensions>true</extensions>
<configuration>
    <instructions>
        <Bundle-Category>sample</Bundle-Category>
        <Bundle-SymbolicName>${artifactId}
                 </Bundle-SymbolicName>
        <Export-Package>
            //blahblah
        </Export-Package>
    </instructions>

    <!-- OBR -->
    <remoteOBR>repo-rel</remoteOBR>
    <prefixUrl>file:///C:/Users/blah/Projects/Eclipse3.6-RCP-64/Felix/obr-repo/releases</prefixUrl>
    <ignoreLock>true</ignoreLock>
</configuration>

How can I add a jar to my bundle in Apache Felix?

I am using maven, with maven-bundle-plugin to manage my bundles in OBR for me.

But I am not sure where to declare the dependency inside my POM on the jar, so that maven correctly compiles it into the final bundle.

This is how my plugin looks in pom:

<plugin>
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
<version>2.1.0</version>
<extensions>true</extensions>
<configuration>
    <instructions>
        <Bundle-Category>sample</Bundle-Category>
        <Bundle-SymbolicName>${artifactId}
                 </Bundle-SymbolicName>
        <Export-Package>
            //blahblah
        </Export-Package>
    </instructions>

    <!-- OBR -->
    <remoteOBR>repo-rel</remoteOBR>
    <prefixUrl>file:///C:/Users/blah/Projects/Eclipse3.6-RCP-64/Felix/obr-repo/releases</prefixUrl>
    <ignoreLock>true</ignoreLock>
</configuration>

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

海拔太高太耀眼 2024-10-22 16:40:06

如果您有这样的依赖项,

<dependency>
    <groupId>log4j</groupId>
    <artifactId>log4j</artifactId>
    <version>1.2.14</version>
</dependency>

您可以将其嵌入到您的捆绑包中。

<instructions>
    <!-- embedded dependencies -->
    <Embed-Dependency>log4j;groupId=log4j;inline=false</Embed-Dependency>
</instructions>

您将在 Maven 站点的捆绑插件

If you have a dependecy like this

<dependency>
    <groupId>log4j</groupId>
    <artifactId>log4j</artifactId>
    <version>1.2.14</version>
</dependency>

you can embed it in your bundle with

<instructions>
    <!-- embedded dependencies -->
    <Embed-Dependency>log4j;groupId=log4j;inline=false</Embed-Dependency>
</instructions>

You will find a detailed description in the "Embed Dependency" section of the Bundle Plugin for Maven site

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文