IntelliJ 12 - maven多模块无法解决传递依赖性

Mac*_*las 14 intellij-idea

我已经导入了maven多模块项目,并且没有解决一些传递依赖项.这个项目在Jenkins/Eclipse/Console中构建.

我已经尝试了两个单独导入每个项目,并且还只导入父pom - 两者都不起作用.

我有以下结构:Project A并且Project B具有公共父级,并且两者都被定义为此父级中的模块.Project A包含作为依赖项jackon-jar,Project B没有它.Project A包含默认范围内的jackson-jar - jar在编译期间可见并且测试正在运行.现在Project B进口Project A,也使用杰克逊罐 - 这里是问题 - 杰克逊罐在不可见的Project B:(当我在Project B所有工作中明确指定它工作正常,但它应该自动作为传递依赖从Project A......

这是常见问题吗?有解决方法吗?

以下是POM示例:

家长:

<project ....>
    <modelVersion>4.0.0</modelVersion>

    <version>1.0-SNAPSHOT</version>
    <groupId>miklas.test</groupId>
    <artifactId>my-parent</artifactId>
    <packaging>pom</packaging>

    <modules>
        <module>my-project-a</module>
        <module>my-project-b</module>
        <module>my-project-c</module>
    </modules>
</project>
Run Code Online (Sandbox Code Playgroud)

项目-A

<project ....>
    <modelVersion>4.0.0</modelVersion>
    <parent>
        <groupId>miklas.test</groupId>
        <artifactId>my-parent</artifactId>
        <version>1.0-SNAPSHOT</version>
    </parent>

    <artifactId>my-project-a</artifactId>
    <packaging>jar</packaging>

    <dependencies>
        <dependency>
            <groupId>org.jboss.resteasy</groupId>
            <artifactId>resteasy-jackson-provider</artifactId>
            <version>2.3.4.Final</version>
        </dependency>
    </dependencies>

</project>
Run Code Online (Sandbox Code Playgroud)

项目-B

<project >
    <modelVersion>4.0.0</modelVersion>
    <parent>
        <groupId>miklas.test</groupId>
        <artifactId>my-parent</artifactId>
        <version>1.0-SNAPSHOT</version>
    </parent>

    <artifactId>my-project-b</artifactId>
    <packaging>jar</packaging>

    <dependencies>
        <dependency>
            <groupId>miklas.test</groupId>
            <artifactId>my-project-a</artifactId>
            <version>${project.version}</version>
        </dependency>
    </dependencies>

</project>
Run Code Online (Sandbox Code Playgroud)

下面是我真实项目的截图 - 这将Project B来自上面的简化示例.在左侧我们可以看到,它resteasy-jackoson-provider有4个依赖的罐子,而在右侧只有两个.两个视图都显示相同的项目:

在此输入图像描述

现在来自的截图相同 Project A

在此输入图像描述

Ano*_*ose 8

这似乎是IntelliJ 12中的一个错误.请参阅http://youtrack.jetbrains.com/issue/IDEA-98425,如果对您来说很重要,请投票支持该问题.

  • 这是严重的问题,这使我无法使用intellij - 他们应该尽快修复这些事情而不进行任何投票......但我会投票;) (2认同)