Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/320.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/maven/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 使用pom打包maven项目作为依赖项_Java_Maven_Pom.xml_Maven Dependency - Fatal编程技术网

Java 使用pom打包maven项目作为依赖项

Java 使用pom打包maven项目作为依赖项,java,maven,pom.xml,maven-dependency,Java,Maven,Pom.xml,Maven Dependency,我正在咨询一个关于在另一个项目中使用pom打包maven项目作为依赖项的问题。我试着阅读maven的文档并在网上搜索,但没有找到什么解决方案 pom包装项目由多个子模块组成,这些子模块是jar包装,类似于: <project ...> <groupId>the.pom.project</groupId> <artifactId>pom-project</artifactId> <version>1.0

我正在咨询一个关于在另一个项目中使用pom打包maven项目作为依赖项的问题。我试着阅读maven的文档并在网上搜索,但没有找到什么解决方案

pom包装项目由多个子模块组成,这些子模块是jar包装,类似于:

<project ...>
    <groupId>the.pom.project</groupId>
    <artifactId>pom-project</artifactId>
    <version>1.0</version>
    <packaging>pom</packaging>

    <modules>
            <module>a-pom-module</module>
            <module>b-pom-module</module>
            <module>c-pom-module</module>
            <module>d-pom-module</module>
            <module>e-pom-module</module>
            <module>f-pom-module</module>
    </modules>
</project>

pom项目
pom项目
1
聚甲醛
a-pom-module
b-pom-module
c-pom-module
d-pom-模
e-pom-module
f-pom-module
另一个项目依赖于pom项目的子模块jars。我写得像:

<project ...>
    <groupId>the.another.project</groupId>
    <artifactId>another-project</artifactId>
    <version>1.0</version>
    <packaging>jar</packaging>

    <dependencyManagement>
            <dependencies>
                    <dependency>
                            <groupId>the.pom.project</groupId>
                            <artifactId>pom-project</artifactId>
                            <version>1.0</version>
                            <type>pom</type>
                    </dependency>
            </dependencies>
    </dependencyManagement>
</project>

另一个项目
另一个项目
1
罐子
pom项目
pom项目
1
聚甲醛
我试图将pom项目添加为依赖项,目的是将所有子模块jar添加到另一个项目的类路径中,但这似乎对我不起作用


我不希望手动添加所有子模块作为依赖项。

导入pom的方法不起作用

您需要创建新的pom来聚合所需的依赖项,然后在项目中添加对该聚合pom的依赖项

创建聚合pom,如下所示

<groupId>the.pom.project</groupId>
    <artifactId>aggregate-pom</artifactId>
    <version>1.0</version>
    <packaging>pom</packaging>

    <dependencies>
        <dependency>
            <groupId>the.pom.project</groupId>
            <artifactId>a-pom-module</artifactId>
            <version>1.0</version>
        </dependency>
        .
        .
        .
    <dependencies>
the.pom.project
聚合聚甲醛
1
聚甲醛
pom项目
a-pom-module
1
.
.
.
然后在项目中使用以下依赖项

<dependency>
    <groupId>the.pom.project</groupId>
    <artifactId>aggregate-pom</artifactId>
    <version>1.0</version>
    <type>pom</type>
</dependency>

pom项目
聚合聚甲醛
1
聚甲醛

谢谢,这很有效。虽然我认为应该有一些插件在部署时自动生成这样的聚合pom。是的,应该有一个生成聚合pom的标志