2

我有一个通用工件,用于存储构建工具配置文件,例如 checkstyle、pmd 等。

当我从控制台运行时,我可以访问文件并且一切都按预期工作。mvn site配置文件包含在我的项目中,并且当我从控制台运行时会按预期生成报告。

mvn eclipse:eclipse但是,找不到 eclipse 所需且在运行时应包含的文件。我收到一条错误消息,告诉我找不到文件。

这是我的 POM.xml 文件的重要部分:

<build>
  <extensions>
    <extension>
      <groupId>com.foo</groupId>
      <artifactId>build-tools</artifactId>
      <version>1.0</version>
    </extension>
  </extensions>
  <plugins>
    <plugin>
      <groupId>org.apache.maven.plugins</groupId>
      <artifactId>maven-eclipse-plugin</artifactId>
      <version>2.9</version>
      <configuration>
        <additionalBuildcommands>
          <buildcommand>net.sf.eclipsecs.core.CheckstyleBuilder</buildcommand>
        </additionalBuildcommands>
        <additionalProjectnatures>
          <projectnature>net.sf.eclipsecs.core.CheckstyleNature</projectnature>
        </additionalProjectnatures>
        <additionalConfig>
          <file>
            <name>.checkstyle</name>
            <location>${basedir}/eclipse-checkstyle.xml</location>
          </file>
        </additionalConfig>
      </configuration>
    </plugin>
  </plugins>
</build>

所以我的问题是如何让 maven 了解这些位于我的构建工具工件中的文件在我运行eclipse:eclipse命令时包含在其中?

编辑:找不到的是 eclipse-checkstyle.xml。

4

1 回答 1

0

您应该将包含相关源的 jar 添加为插件的依赖项,而不是扩展:

  <plugins>
    <plugin>
      <groupId>org.apache.maven.plugins</groupId>
      <artifactId>maven-eclipse-plugin</artifactId>
      <version>2.9</version>
      <configuration>
        ...
      </configuration>
      <dependencies>
        <dependency>
          <groupId>com.foo</groupId>
          <artifactId>build-tools</artifactId>
          <version>1.0</version>
        </dependency>
      </dependencies>
    </plugin>
  </plugins>
于 2021-08-17T22:02:16.533 回答