我对 Maven 还很陌生,我已经建立了 2 个 Maven 项目,其中之一是我的实用程序 API,第二个是 Jersey API。我安装了实用程序 API 作为本地 Maven 存储库的一部分,并将其添加到 pom.xml 文件中。
一切工作正常,只是当我想构建/运行测试时,我需要转到项目所在的每个目录并运行命令。有没有办法运行一个命令或以某种方式重新配置项目,以便我能够仅从 REST API 目录处理所有内容?
例如。 mvn clean test ... 某事 ... -> 去测试我的两个项目。
再一次,我是 Maven 的新手,但我也进行了研究,但找不到可以帮助我的正确有用信息。如果这是需要关闭的问题之一,您能否在关闭之前至少向我提供一些更多信息?谢谢。
最佳答案
您可以使用多模块 Maven 项目。您定义这样的结构
/
pom.xml (A)
util-api
pom.xml (B)
jersey.api
pom.xml (C)
在子 pom 中,您指定 <parent>
节点。
(A) pom.xml
<?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>mygroup.id</groupId>
<artifactId>myparentartifact</artifactId>
<packaging>pom</packaging>
<version>0.0.1-SNAPSHOT</version>
...
<modules>
<module>util-api</module>
<module>jersey-api</module>
</modules>
</pom>
(B) pom.xml
<?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>
<parent>
<artifactId>myparentartifact</artifactId>
<groupId>mygroup.id</groupId>
<version>0.0.1-SNAPSHOT</version>
<relativePath>../pom.xml</relativePath>
</parent>
<artifactId>util-api</artifactId>
<packaging>jar</packaging>
</pom>
(C) pom.xml
<?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>
<parent>
<artifactId>myparentartifact</artifactId>
<groupId>mygroup.id</groupId>
<version>0.0.1-SNAPSHOT</version>
<relativePath>../pom.xml</relativePath>
</parent>
<artifactId>jersey-api</artifactId>
<packaging>jar</packaging>
</pom>
通过此配置,您可以使用一个命令构建所有模块:mvn clean install
关于java - 有没有一种方法只需一个命令即可构建我的所有 Maven 项目?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31025924/