当前位置: 首页 > 面试题库 >

Maven检查样式作为构建的一部分

马权
2023-03-14
问题内容

如果存在某些checkstyle错误,是否有可能以某种方式强迫Maven失败?现在,我必须运行site目标以生成javadocscheckstyle报告。我想使其达到install目标,如果checkstyle出现错误,则需要构建才能失败。这有可能实现吗?

现在我有checkstyle报告的Maven块:

<reporting>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-checkstyle-plugin</artifactId>
            <version>2.9.1</version>
            <configuration>
                <configLocation>src/test/resources/checkstyle.xml</configLocation>
            </configuration>
        </plugin>
    </plugins>
</reporting>

问题答案:

您需要绑定checkstyle:check到Maven生命周期阶段(例如validate)并设置failOnViolation为true。

就像是:

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-checkstyle-plugin</artifactId>
    <version>2.9.1</version>
    <executions>
        <execution>
        <id>checkstyle</id>
        <phase>validate</phase>
        <goals>
            <goal>check</goal>
        </goals>
        <configuration>
            <failOnViolation>true</failOnViolation>
        </configuration>
        </execution>
    </executions>
</plugin>


 类似资料:
  • 问题内容: 我有很多Java源代码,需要自定义预处理。我想摆脱它,但是现在不可行,所以我坚持了下来。鉴于我有一个不幸的问题,而这个问题本来不应该存在的,那么我该如何使用Maven解决这个问题呢? (对于整个故事,我要用一个maven替换一个基于python的构建系统,因此请一次进行一次改进。修复非标准源代码会更加困难,并且将在以后发布。) 是否可以使用任何现有的Maven插件在编译时实际更改源文件

  • 我是马文的新手。我正在尝试将一个插件集成到我的构建中,这样它将作为阶段执行的一部分自动执行。 假设我想插入清洁生命周期阶段。 我正在使用的mojo被注释为指定它应该被注入清洁阶段: 这个mojo是按照插件工具Java5注解中的说明安装的。我在pom中添加了插件。xml: 据我所知,在Mojo java代码中使用生命周期绑定可以消除在构建插件中提供执行的需要。对吗? 在调用myclean上面配置的m

  • 问题内容: 如果您有一个可以接受某些参数但不允许使用任何参数的类,则最佳做法是什么? 以下内容显而易见,但有一点例外: 在这里,异常使您知道哪个参数为空,但是构造函数现在很丑陋: 这里的构造函数比较整洁,但是现在构造函数代码实际上不在构造函数中: 以下哪种风格最好? 还是有一个更广泛接受的替代方案? 问题答案: 第二或第三。 因为它告诉您API的用户到底出了什么问题。 对于较低的冗长程度,请使用c

  • 如何安装卷来存储我的. m2存储库,这样我就不必在每次构建时下载互联网? 我的构建是一个多阶段构建:

  • 我有包含组件A的组件B。组件A定义了PropType以验证其属性。我希望组件B中有一个表示组件a中属性的属性,验证它们并引用它们。我似乎不明白。以下是我到目前为止所做的(为简化本次讨论而抽象): ComponentB中包含PropTypes.shape的行不会抛出任何警告,但是我仍然可以向ComponentA传递虚假的属性值,所以我觉得仍然缺少一些东西。也就是说,我可以写作 没有警告或错误,即使c

  • 在git push heroku master上,我遇到了以下错误: 在以下位置找不到抑制文件:etc/config/checkstyle suppressions。xml:找不到资源的etc/config/checkstyle抑制。xml”。 我发现了一个示例checkstyle抑制。xml文件,只是为了入门,在这里,并将其添加到my_app/target/test classes/org/gl