0

我们在多项目环境中使用 Maven2。实际上我正在处理依赖范围。在目标解决方案中,我想通过设置类路径将所有依赖项提交给 vm。

Pom_Project_A_.xml

<dependencies>
    <dependency>log4j</dependency>
    <dependency>commons-io</dependency>
    <dependency>...</dependency>
</dependencies>

Pom_Project_B.xml

<dependencies>
    <dependency>Project_A</dependency>
</dependencies>

当我想编译项目“B”时,maven 无法解析 log4j 和项目“A”中已经定义的其他“子依赖项”。

是否有可能改变这种行为?非常感谢

4

1 回答 1

0

范围“编译”是我需要的。我对 maven 目标包、程序集等的范围编译、运行时、测试等感到困惑。

项目 A 的 Pom:

<parent>
    <groupId>net.company</groupId>
    <artifactId>superpom</artifactId>
    <version>1.0.2</version>
</parent>

<groupId>net.company.projectA</groupId>
<artifactId>projectA</artifactId>
<version>1.1.0-SNAPSHOT</version>
<packaging>jar</packaging>
<dependencies>
    <dependency>
        <groupId>log4j</groupId>
        <artifactId>log4j</artifactId>
        <version>1.2.16</version>
        <scope>compile</scope>
    </dependency>
</dependencies>

项目 B 的 Pom:

<parent>
    <groupId>net.company</groupId>
    <artifactId>superpom</artifactId>
    <version>1.0.2</version>
</parent>

<groupId>net.company.projectB</groupId>
<artifactId>projectB</artifactId>
<version>1.1.2-SNAPSHOT</version>
<packaging>jar</packaging>
<dependencies>
    <dependency>
        <groupId>net.company.projectA</groupId>
        <artifactId>projectA</artifactId>
        <version>1.1.0-SNAPSHOT</version>
        <scope>compile</scope>
    </dependency>
</dependencies>
于 2012-07-18T06:58:50.160 回答