java - maven如何决定构建什么类型的项目以及如何控制单个maven项目中的多个模块?

标签 java maven maven-3

好的,这个问题与编码问题无关,我想要学习以下两件事的最佳资源,请您帮助我。

  1. 我想知道当我们运行 build 时,maven 如何决定他构建的项目类型是 .war 或 .jar 文件,但它如何决定这是 war 项目还是 jar 项目
  2. 我还需要引用来学习如何在单个项目中管理多个 Maven 项目,这意味着当我构建父项目时,所有子项目都将包含在其中

这就是我的问题

最佳答案

对于你的第一个问题,Maven 通过查看 <package> 来决定使用什么包。标签。 举个例子

<groupId>com.example</groupId>
<artifactId>my-example</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>war</packaging>

这会将项目打包为 war文件。

编辑:这是错误的方式 对于您的第二个问题,您正在寻找的可能是 profile在 maven 中。举个例子

   <profiles>
      <profile>
        <id>my-service</id>
        <modules>
            <module>../my-service-one</module>
            <module>../my-service-two</module>
        </modules>
      </profile>
  </profile>

在上面的代码片段中my-project-onePOM这个“my-project-one”模块的文件。当您构建my-service时,其相关模块my-project-onemy-project-two开始构建。

接受的方式 您可以使用 Multi-Module Project Maven 中的结构来实现你的第二个目标。

关于java - maven如何决定构建什么类型的项目以及如何控制单个maven项目中的多个模块?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59905725/

相关文章:

java - Spring Boot @ManagedResource 组件在 Docker 中启动时在 VisualVM 中不可见,但可以在本地运行

maven - 我可以为 Maven 中的任何项目设置默认部署吗?

java - 带有 Maven 的 Eclipse 在依赖项目的类路径中包含测试类

maven 3无法读取 Artifact 描述符

java - 有条件调用构造函数

java - 如何将包含 JPanel 的 JScrollPane 视口(viewport)滚动到特定位置

java - ASM 字节码库中用于确定操作码性质的实用方法?

maven - 本地主机和远程服务器(Tomcat)上的war文件部署之间的区别

java - 无法确定为什么 Smallrye/camel 代码片段未编译 : no subscriber method in camel context obj?

spring-mvc - GlassFish 4,Grizzly 框架 2.3.23 : Instance could not be initialized. 类=接口(interface) org.glassfish.grizzly.http.server.AddOn