java - Maven,继承pom模块

标签 java maven tomcat9

我正在编写一个项目,但在编译项目时遇到了问题。当我导入必要的依赖项后,如 pom 文件所示,我无法运行该项目。

<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 https://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>


  <artifactId>universeBySali-web</artifactId>
  <packaging>war</packaging>

   <parent>
    <groupId>org.springframework.boot</groupId>
     <artifactId>spring-boot-starter-parent</artifactId>
         <version>1.3.6.RELEASE</version>
     </parent>

    <properties>
        <java.version>13.0.2</java.version>
     </properties>

    <dependencies>
        <dependency>
            <groupId>com.vaadin</groupId>
            <artifactId>vaadin-spring-boot-starter</artifactId>
            <version>15.0.0</version>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-jpa</artifactId>
        </dependency>
        <dependency>
            <groupId>com.sali</groupId>
            <artifactId>universeBySali-ui</artifactId>
            <version>0.0.1-SNAPSHOT</version>
        </dependency>
    </dependencies>

        <build>
    <plugins>
        <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
            <configuration>
                <executable>true</executable>
            </configuration>
        </plugin>

        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-war-plugin</artifactId>
            <configuration>
                <failOnMissingWebXml>false</failOnMissingWebXml>
            </configuration>
        </plugin>
    </plugins>
  </build>
</project>

pom文件中显示的错误如下:

项目构建错误:POM org.springframework.boot:universeBySali-web:1.3.6.RELEASE 的“parent.relativePath”(C:\Users\User\Desktop\Materiale\Desktop\Java Projects\universeBySali\universeBySali- web\pom.xml) 指向 com.sali:universeBySali 而不是 org.springframework.boot:spring-boot-starter-parent,请验证您的项目结构

这个pom文件有一个父pom,如下所示:

<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 https://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>com.sali</groupId>
  <artifactId>universeBySali</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  <packaging>pom</packaging>
  <modules>
    <module>universeBySali-Model</module>
    <module>universeBySali-repository</module>
    <module>universeBySali-service</module>
    <module>universeBySali-util</module>
    <module>universeBySali-web</module>
    <module>universeBySali-ui</module>
  </modules>
</project>

有人可以告诉我我做错了什么吗?谢谢

最佳答案

默认情况下,Maven 假定父级具有以下相对路径:../pom.xml 。 Maven 将尝试匹配 groupId/artifactId/version,如果不成功,则会抛出警告并使用“外部”父级。 为了确保 Maven 不会尝试将父级作为多模块的一部分进行解析,您应该添加 <relativePath/>给家长。

关于java - Maven,继承pom模块,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60697145/

相关文章:

java - 在 android 的棉花糖设备中从 RSA key 生成私钥的异常

java - Java 是否创建默认构造函数?

Java 9 迁移 javax.annotation

java - IntelliJ 检查给出 "Cannot resolve symbol"但仍然编译代码

java - 如何使用 FileOutputStream 写入数据而不丢失旧数据?

java - 如何限制 Nexus 中部署的快照 Artifact 的数量?

java - 无法使用 tomcat 9 在 Intellij 中热交换 html 文件

java - 部署 war 。 Tomcat 没有考虑 META-INF 中的 context.xml

java - Tomcat 9/JNDI 数据源 - 无法为连接 URL '' 创建类 'null' 的 JDBC 驱动程序

java - 如何使用Servlet和Ajax?