我正在我们的软件中配置 Maven,它运行得非常好。我有一些细节需要修复,但它们没有按照我想要的方式工作,我需要知道我能做什么。具体来说,我们都使用 Eclipse,并且在之前的配置(没有 Maven)中,我们手动定义了构建路径中的包含和排除。因此,我们有诸如排除 */.svn/
和 Include(All) 之类的内容。
我们使用项目->自动构建选项进行检查,因此我们发现Eclipse的构建与Maven的构建不同。检查“构建路径”选项,我们发现对于 Eclipse,问题来自包含和排除。我们在 OutputDirectory 下创建了一个 lib 文件夹,并且存在一些丢失的文件,因为如果我们这样做
mvn eclipse:eclipse
包含模式类似于*.java
,我们需要 Include(All)。那么,有没有办法从我们的 pom 中定义 Eclipse 构建路径中的特定包含/排除选项?
我们有一个特定的源结构,因此我们已经定义了如下插件:
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
<version>1.9.1</version>
<executions>
<execution>
<id>default-source-folders</id>
<phase>generate-sources</phase>
<goals>
<goal>add-source</goal>
</goals>
<configuration>
<sources>
<source>
...
此外,我需要知道是否已弃用配置 eclipse
mvn eclipse:eclipse
因为我了解到该插件已被弃用。
编辑:我正在使用 Maven 3.3 和 Eclipse 4.4.1。
最佳答案
是的,maven-eclipse-plugin
已停产,您不应使用它。从他们的主页:
Note: This plugin is retired. It is no longer maintained.
我遇到过与您面临的非常相似的问题:当 Maven 生成源文件时,Eclipse 与 M2Eclipse 一起使用,即使使用 build-helper-maven-plugin
将这些源显式添加到构建路径中也是如此,并不总是检测到这些新源,并且会导致 Eclipse 中的构建错误(尽管 Maven 构建没问题)。我没有找到任何直接解决问题的好方法。
我发现工作得相当好的唯一解决方法是通过右键单击新的源父文件夹并选择“构建路径 > 用作源文件夹”来手动将生成的源添加到 Eclipse 项目的构建路径/em>。这解决了构建路径问题。完成此操作后,即使在完全清理和重建 Maven 项目之后,它仍然可以继续工作。
一般来说,您不应该手动修改构建路径的包含和排除规则。在这种特殊情况下,这是我找到的唯一解决方法,但请注意,我们只是将这个特定的新源文件夹添加到构建路径中。没有任何内容被手动排除。
我希望 M2Eclipse 插件及其连接器将来能够一致地支持用例......
关于java - Maven + Eclipse : Adding exclusions,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35185515/