【问题标题】:Embed Apache stanbol in java application(Maven)在 java 应用程序中嵌入 Apache stanbol (Maven)
【发布时间】:2014-08-01 07:07:48
【问题描述】:

我对 Maven 还很陌生,我不知道如何将 Apache Stanbol 嵌入到我的 Maven 应用程序中。

我已将以下依赖项添加到我的 pom 中,<type> 是 pom,因为存储库中没有可用的 jar。

`</dependencies>
    <dependency>
        <groupId>org.apache.stanbol</groupId>
        <artifactId>apache-stanbol</artifactId>
        <version>0.12.0</version>
        <type>pom</type>
    </dependency>
</dependencies>`

如何在我的 java 应用程序中包含 Apache Stanbol,例如直接向前的 open-nlp

<dependency> <groupId>org.apache.opennlp</groupId> <artifactId>opennlp-tools</artifactId> <version>1.5.3</version> </dependency>

【问题讨论】:

  • 查看the list of Maven artifacts related to org.apache.stanbol,您似乎需要下载一个满足您需求的特定子项目。
  • 您给出的依赖定义是错误的,因为那是模块父级。查看文档如何正确使用它。
  • 我想使用 org.apache.stanbol.enhancer,所以我必须下载源代码还是包含 org.apache.stanbol.enhancer 作为单独的依赖项?
  • 您可以使用 org.apache.stanbol.enhancer 作为依赖项。应该够了。
  • 添加org.apache.stanbol.enhancer 似乎与添加org.apache.stanbol 相同,我的应用程序中没有该api

标签: java maven dependency-management apache-stanbol


【解决方案1】:

Apache Stanbol 是基于 OSGi 的,如果您的应用程序是基于 OSGi 的,您可以简单地将相关包安装到您的运行时中。但如果您的应用程序不是 OSGi,您将需要启动嵌入式 OSGi 运行时并在那里配置相关的 Stanbol 包。

此邮件线程讨论了这个问题 [1],建议的解决方案是在嵌入式 Felix 运行时中配置 Stanbol,如 [2] 中所述。但是到目前为止,我还没有找到将 Stanbol 嵌入到非 OSGi 应用程序中的示例。

[1]http://mail-archives.apache.org/mod_mbox/incubator-stanbol-dev/201111.mbox/%3CCABMc4VYP5e+vtW1As1yP7RRnSg84DjtApZ9J5vpS14ryV6OQ1Q@mail.gmail.com%3E

[2]https://felix.apache.org/site/apache-felix-framework-launching-and-embedding.html#ApacheFelixFrameworkLaunchingandEmbedding

【讨论】:

    猜你喜欢
    • 2013-06-04
    • 2018-02-18
    • 2014-06-13
    • 1970-01-01
    • 2011-02-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-05-20
    相关资源
    最近更新 更多