只需一个命令即可在当前工作空间中构建所有 Eclipse maven 项目?

2022-09-04 20:28:34

有没有人知道任何简单而有效的方法可以在当前工作区中构建所有Maven项目,例如,为每个此类项目进行maven clean install。

例如,是否可以选择多个项目并使用类似于 ${project_loc} 的内容,或者获取一个弹出窗口,其中包含可用于运行配置的可能项目?还是其他任何方式?

我正在使用Eclipse Juno。


答案 1

你能给他们一个父 pom.xml然后给父 pom.xml吗?mvn compile

在此处查找项目继承。

如果可以指定相对路径,则这应该不会太难。使用pom创建一个新的maven项目.xml如下所示:

<?xml version="1.0"?>
<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>com.example</groupId>
    <artifactId>parent-app</artifactId>
    <packaging>pom</packaging>
    <version>1</version>
    <modules>
        <module>../project1</module>
        <module>../project2</module>
    </modules>
</project>

从 Eclipse 工作区(但不是文件系统)中删除项目,然后导入父 maven 项目。现在,您可以:

Run As... > Maven build > clean compile(作为目标)

它应该清理并编译所有项目。


答案 2

由于启动配置始终与一个项目相关,因此无法通过纯 Eclipse 工具将多个项目放入启动配置中。但是,有一些解决方法:

  • 使用 parent.pom 创建一个包含所有现有项目的新项目(并在 Maven 中执行迭代)。
  • 真正为每个项目定义一个启动配置,然后使用CDT启动组EclipseRunner插件来批量启动它们。
  • 使用 Ant 脚本循环访问工作空间目录,并使用 Ant4Eclipse 调用启动配置。

也就是说,您最好的选择是 parent.pom,因为它是一种行之有效的方法,您可以在持续集成服务器上重用它。


推荐