java - 使用 Mina JAR 依赖项而不是 bundle ?

标签 java maven apache-mina

最近,Mina 似乎将他们的 Artifact 部署为 *.bundle 文件,这至少很烦人,充其量是彻头彻尾的邪恶。

如果我像这样在 Maven 中依赖 Mina:

<dependency>
    <groupId>org.apache.mina</groupId>
    <artifactId>mina-core</artifactId>
    <version>${mina.version}</version>
    <type>jar</type>
</dependency>
<dependency>
    <groupId>org.apache.mina</groupId>
    <artifactId>mina-integration-beans</artifactId>
    <version>${mina.version}</version>
    <type>jar</type>
</dependency>
<dependency>
    <groupId>org.apache.mina</groupId>
    <artifactId>mina-integration-jmx</artifactId>
    <version>${mina.version}</version>
    <type>jar</type>
</dependency>

...然后我收到以下错误:

Multiple annotations found at this line:
- Missing artifact org.apache.mina:mina-integration-ognl:bundle:2.0.4
- Missing artifact org.apache.mina:mina-core:bundle:2.0.4
- Missing artifact org.apache.mina:mina-integration-beans:bundle:2.0.4

我不确定为什么它仍在寻找 *.bundle 文件而不是 *.jar 文件。为什么它不查找 JAR 文件?

这尤其令人沮丧,因为我有一些项目依赖于这个项目,但如果没有 Mina JAR,它们都会失败。古老的 Java JAR 发生了什么?

最佳答案

首先,我发现仅使用核心就可以正常工作,但是如果您开始使用 mina-integration-bean 或 mina-integration-jmx,就会遇到问题。此外,我找到了 following issue in the JIRA tracker of Mina project这正是您的问题。

另一方面,您可以像这样在 maven 中排除那些包依赖项:

  <dependencies>
    <dependency>
      <groupId>org.apache.mina</groupId>
      <artifactId>mina-core</artifactId>
      <version>2.0.4</version>
      <type>jar</type>
    </dependency>
    <dependency>
      <groupId>org.apache.mina</groupId>
      <artifactId>mina-integration-beans</artifactId>
      <version>2.0.4</version>
      <type>jar</type>
      <exclusions>
        <exclusion>
          <groupId>org.apache.mina</groupId>
          <artifactId>mina-core</artifactId>
        </exclusion>
      </exclusions>
    </dependency>
    <dependency>
      <groupId>org.apache.mina</groupId>
      <artifactId>mina-integration-ognl</artifactId>
      <version>2.0.4</version>
      <type>jar</type>
      <exclusions>
        <exclusion>
          <groupId>org.apache.mina</groupId>
          <artifactId>mina-core</artifactId>
        </exclusion>
        <exclusion>
          <groupId>org.apache.mina</groupId>
          <artifactId>mina-integration-beans</artifactId>
        </exclusion>
      </exclusions>
    </dependency>
    <dependency>
      <groupId>org.apache.mina</groupId>
      <artifactId>mina-integration-jmx</artifactId>
      <version>2.0.4</version>
      <type>jar</type>
      <exclusions>
        <exclusion>
          <groupId>org.apache.mina</groupId>
          <artifactId>mina-core</artifactId>
        </exclusion>
        <exclusion>
          <groupId>org.apache.mina</groupId>
          <artifactId>mina-integration-beans</artifactId>
        </exclusion>
        <exclusion>
          <groupId>org.apache.mina</groupId>
          <artifactId>mina-integration-ognl</artifactId>
        </exclusion>
      </exclusions>
    </dependency>
  </dependencies>

关于java - 使用 Mina JAR 依赖项而不是 bundle ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11802507/

相关文章:

java - 如何在 Apache Mina sshd-core 版本 0.14.0 中覆盖 getVirtualUserDir()

java - Java 应用程序中的 TCP 握手非常慢

java - 删除字符串中的空格和特殊字符(仅限数字之间)

java - 执行操作系统相关命令

java - 使 Jersey bean 验证注释变得通用

java - 无法让@Singleton 做任何事情

java - eclipse maven : run test with spring profile

java - BIRT 在 JAR 中构建独立报告生成器

maven - CQ5 如何在自定义插件中使用外部 jar

java - 强制 MINA niosocketacceptor 清理