Maven 下载Pom.xml并引用父Pom

Maven 下载Pom.xml并引用父Pom,maven,Maven,我有一个Pom.xml,我想知道是否有办法让Pom从某处下载父Pom,然后引用父Pom 编辑:我对家长pom有意见,这是我的家长pom <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http

我有一个Pom.xml,我想知道是否有办法让Pom从某处下载父Pom,然后引用父Pom

编辑:我对家长pom有意见,这是我的家长pom

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
     xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>dev</groupId>
    <artifactId>company-parent</artifactId>
    <version>1.0.0-SNAPSHOT</version>
    <packaging>pom</packaging>

<distributionManagement>
    <repository>
        <id>Artifactory</id>
        <name>Artifactory-releases</name>
        <url>http://artifactory:8081/artifactory/dev</url>
    </repository>
    <snapshotRepository>
        <id>Artifactory</id>
        <name>Artifactory-snapshots</name>
        <url>http://artifactory:8081/artifactory/dev</url>
    </snapshotRepository>
</distributionManagement>

</project>

如何让我的Pom在我的artifactory实例中找到工件?

您的父级
Pom
应该是
Pom
packaging
类型
Pom
。e、 g:

<?xml version="1.0" encoding="UTF-8"?>
< project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" >
    <modelVersion>4.0.0</modelVersion>

    <groupId>org.example</groupId>
    <artifactId>parent</artifactId>
    <version>1.0</version>
    <packaging>pom</packaging>

</project>
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <parent>
        <artifactId>parent</artifactId>
        <groupId>org.example</groupId>
        <version>1.0</version>
    </parent>
    <modelVersion>4.0.0</modelVersion>

    <artifactId>child</artifactId>

    <repositories>
        <repository>
            <id>Artifactory-Releases</id>
            <url>http://artifactory:8081/artifactory/dev</url>
            <snapshots>
                <enabled>false</enabled>
            </snapshots>
            <releases>
                <enabled>true</enabled>
            </releases>
        </repository>
        <repository>
            <id>Artifactory-Snapshots</id>
            <url>http://artifactory:8081/artifactory/dev</url>
            <snapshots>
                <enabled>true</enabled>
            </snapshots>
            <releases>
                <enabled>false</enabled>
            </releases>
        </repository>
    </repositories>
</project>

你的意思有点不清楚。父POM会自动下载并安装在本地存储库中。好吧,让我试着更好地解释一下,我想让父POM托管在某个地方,比如Artifactory上。然后,我希望我的计算机上的Pom.xml运行一个命令来下载父Pom并引用它。这有用吗?可能是@EngineerDollery的副本,谢谢。当我创建一个测试项目时,它来自IDE:)即使父pom托管在其他地方,它也可以工作吗?我不需要有一个链接或其他东西来链接父pom的位置吗?目前,我的Pom使用相对路径引用父级。如果将Pom部署到任何maven存储库中,它将起作用。此存储库将在pom中配置。@Macauley您的pom需要匹配父pom的坐标(
groupId
artifactId
版本
)。您的父POM具有
dev:company-parent:1.0.0-SNAPSHOT
,但子POM正在引用
dev:company-parent:1.0.0
;您的子POM缺少
-SNAPSHOT
部分。我编辑了它以匹配,但仍然得到相同的错误,要让我的POM从我的artifactory获取父POM,我是否应该编辑代码顶部指向artifactory的链接?
<?xml version="1.0" encoding="UTF-8"?>
< project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" >
    <modelVersion>4.0.0</modelVersion>

    <groupId>org.example</groupId>
    <artifactId>parent</artifactId>
    <version>1.0</version>
    <packaging>pom</packaging>

</project>
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <parent>
        <artifactId>parent</artifactId>
        <groupId>org.example</groupId>
        <version>1.0</version>
    </parent>
    <modelVersion>4.0.0</modelVersion>

    <artifactId>child</artifactId>

    <repositories>
        <repository>
            <id>Artifactory-Releases</id>
            <url>http://artifactory:8081/artifactory/dev</url>
            <snapshots>
                <enabled>false</enabled>
            </snapshots>
            <releases>
                <enabled>true</enabled>
            </releases>
        </repository>
        <repository>
            <id>Artifactory-Snapshots</id>
            <url>http://artifactory:8081/artifactory/dev</url>
            <snapshots>
                <enabled>true</enabled>
            </snapshots>
            <releases>
                <enabled>false</enabled>
            </releases>
        </repository>
    </repositories>
</project>