Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/eclipse/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 在Eclipse中自动导入新的Maven模块_Java_Eclipse_Maven 2 - Fatal编程技术网

Java 在Eclipse中自动导入新的Maven模块

Java 在Eclipse中自动导入新的Maven模块,java,eclipse,maven-2,Java,Eclipse,Maven 2,我在Subversion存储库中有一个多模块Maven项目,许多开发人员都在使用Eclipse+M2Eclipse进行开发。现在,如果开发人员添加模块,其他人需要从命令行执行SVN更新(因为Eclipse没有看到Maven项目的公共根),并将新模块作为Eclipse项目手动导入 有没有一种方法可以自动做到这一点 我的项目结构如下所示: Working Copy Eclipse Workspace working copy root -X-> +- par

我在Subversion存储库中有一个多模块Maven项目,许多开发人员都在使用Eclipse+M2Eclipse进行开发。现在,如果开发人员添加模块,其他人需要从命令行执行SVN更新(因为Eclipse没有看到Maven项目的公共根),并将新模块作为Eclipse项目手动导入

有没有一种方法可以自动做到这一点

我的项目结构如下所示:

Working Copy Eclipse Workspace working copy root -X-> +- parent ---> +- parent | \- pom.xml | \- pom.xml +- child1 ---> +- child1 | \- pom.xml | \- pom.xml +- child2 ---> +- child2 \- pom.xml \- pom.xml 工作副本Eclipse工作区 工作副本根目录-X-> +-父级-->+-父级 |\-pom.xml\-pom.xml +-child1-->+-child1 |\-pom.xml\-pom.xml +-child2-->+-child2 \-pom.xml \-pom.xml
您可以在根目录中有一个pom,它将有parent、child1、child2等模块。SVN更新后,如果添加了新模块,则可以运行

mvn eclipse:clean eclipse:m2eclipse 
从eclipse工具按钮(调试和运行按钮的右侧)


如果您使用的是OrtoiseSVN,您可以设置一个,但每个开发人员都必须独立设置

也许巴克明斯特项目可以帮你检查一下。希望能有帮助

有没有一种方法可以自动做到这一点

做什么?避免将新模块作为Eclipse项目手动导入?好吧,这目前不受支持,您必须手动添加它(虽然可以通过编程方式进行添加,但是对Maven Eclipse插件有这样的要求——找不到一个适用于Maven Integration for Eclipse的插件)

也就是说,添加模块真的如此频繁吗?您的情况可能会有所不同,但根据我的经验,您将很快达到一个稳定点,添加模块将变得不同寻常


然而,良好的团队沟通是我找到的最好的解决方案。当开发人员添加一个新模块时,他有责任让其他团队成员知道他引入了一个变更,并描述将修改考虑在内所需的步骤。没有人是无所不知的,没有人能读懂别人的想法,积极的沟通是良好协作的关键。

你也可以使用maven eclipse插件

        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-eclipse-plugin</artifactId>
            <configuration>
                <wtpversion>2.0</wtpversion>
                <projectNameTemplate>[artifactId]-[version]</projectNameTemplate>
            </configuration>
        </plugin>

org.apache.maven.plugins
maven eclipse插件
2
[工件ID]-[版本]
从svn导入项目后刷新项目


或者您也可以右键单击项目并单击“启用依赖项管理”

我认为最初的问题是关于Eclipse插件(M2Eclipse),而不是maven-Eclipse-plugin。运行多模块构建不需要向根添加pom(我猜OP使用的是平面布局,以便能够从eclipse更新父pom.xml)。虽然后udpate客户端钩子是一个想法,但它不能解决整个问题。我们即将对产品进行重大重构,因此项目在未来几个月内会频繁出现。有很多开发人员在项目上工作,我不希望这些更改每次都阻止他们。我一直都面临着这种情况一个有超过100名开发者的项目,在地理上分布,正如我所说,沟通是你最好的武器。也就是说,我仍然相信你会相对较快地达到一个稳定点。