質問

Maven-Multiプロジェクトがあります。そこから新しいEclipseプロジェクトを作成すると(M2E 1.0 "SCMのCheckout Maven Project)、Eclipse Checkstyleプラグインがそのプロジェクト用に自動的に構成されていることを望みます。

だから私は追加しました maven-eclipse-plugin 親pomで <pluginManagement> セクションと生成するように構成しました .checkstyle ファイルと追加のプロジェクトの性質 CheckstyleNature. 。モジュールのpomsで私はの名前を追加しました maven-eclipse-plugin ビルドセクション。しかし、プロジェクトをチェックアウトすると、何も起こりませんでした。ファイルは生成されず、性質は追加されません。

それで、私は完全に間違ったことをしていると思いますが、それはどのように正しいですか?


親POM-プラグイン管理セクション:

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-eclipse-plugin</artifactId>
    <version>2.8</version>
    <configuration>
        <downloadSources>true</downloadSources>
        <downloadJavadocs>false</downloadJavadocs>
        <wtpversion>2.0</wtpversion>
        <additionalBuildcommands>
            <buildCommand>
                <name>org.eclipse.ajdt.core.ajbuilder</name>
                <arguments>
                    <aspectPath>org.springframework.aspects</aspectPath>
                </arguments>
            </buildCommand>
            <buildCommand>
                <name>org.springframework.ide.eclipse.core.springbuilder</name>
            </buildCommand>
        </additionalBuildcommands>
        <additionalProjectnatures>
            <projectnature>org.eclipse.ajdt.ui.ajnature</projectnature>
            <projectnature>org.springframework.ide.eclipse.core.springnature</projectnature>
            <projectnature>com.atlassw.tools.eclipse.checkstyle.CheckstyleNature</projectnature>
        </additionalProjectnatures>
        <additionalConfig>
            <file>
                <name>.checkstyle</name>
                <content>
<![CDATA[
<?xml version="1.0" encoding="UTF-8"?>
<fileset-config file-format-version="1.2.0" simple-config="true" sync-formatter="false">
  <fileset name="all" enabled="true" check-config-name="My Checkstyle rules" local="false">
    <file-match-pattern match-pattern="." include-pattern="true"/>
  </fileset>
  <filter name="FilesFromPackage" enabled="true">
    <filter-data value="target" />
    <filter-data value="src/main/resources"/>
    <filter-data value="src/test/java"/>
    <filter-data value="src/test/resources"/>
    <filter-data value="src/main/webapp" />
  </filter>
</fileset-config>
]]>
                </content>
            </file>
        </additionalConfig>
    </configuration>
</plugin>

モジュールPOM-プラグインセクション:

<plugin>
     <groupId>org.apache.maven.plugins</groupId>
     <artifactId>maven-eclipse-plugin</artifactId>
</plugin>
役に立ちましたか?

解決

このトピックに対する詳細な答えがあります pom.xmlを使用してM2Eclipseを構成できますか?:

Eclipse CheckStyleプラグインの完全に自動構成は、ProjectConfiguratorでのみ実現できます。 M2Eコード品質 また M2E-Extensions.

バージョン1.0のM2Eの場合、M2Eマーケットプレイスを介して設定 - > maven-> discovery->「Open Catalog」の下でそれらをインストールできます。詳細については、を参照してください M2Eコード品質をM2Eマーケットプレイスに統合するためのバグ追跡.

FindBugsやSonarでもAntrunとXmltaskに基づいたソリューションもあります。チェックアウト後に1回だけ手動トリガーする必要があります。

他のヒント

Maven Eclipseプラグインは、EclipseのM2Eプラグインと同じものではありません。これは、使用しようとしていると思います。基本的に、両方を同時に使用しないでください。

コマンドラインからMVN Eclipse:Eclipseを使用してプロジェクトファイルを生成し、プロジェクトをEclipseにインポートできます。 M2Eは非常に異なって動作し、代わりにMavenプラグインとしてプロジェクトをインポートするときにPOMファイルを使用します。おそらくあなたが望むのは、CheckStyleプラグインを構成することです。 FindBugsやその他のMavenプラグインについても同じです。

しかし、私は実際にMVN Eclipse:Eclipseを使用することを好みますが、実際に上記の作品を予想どおりに確認していません。 M2Eは私にとって無駄が多すぎて、頻繁に間違ったことをしているようです。私は特に、それがMavenとのコマンドラインの相互作用の後、基本的にすべてを再構築する習慣を持っていることを嫌います。しかし、多くの人がM2Eを好むようです。

「チェックスタイルM2E」コネクタをインストールする必要があります

Maven-Checkstyle-PluginをEclipse CheckStyleプラグインに形成する構成を適用します

Window feerphences maven discover openカタログ

そしてもちろん、Eclipseプラグインの代わりにチェックスタイルプラグインが構成されるように、POMを変更する必要があります。

残念ながら、それは私のために働いていません! (他の誰かのために機能する可能性があるため、答えは削除しません。)

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top