GroovyファイルはIntellijのアイデアでコンパイルされません
-
25-10-2019 - |
質問
私はJavaとグルーヴィーなテストでMaven Projectを持っています。コマンドラインMavenコンパイルでは、すべてのテストが実行されていますが、私のIdeaプロジェクトでは(自動的に作成されています。「Autoimport Maven Projects」によって、IdeaはGroovyファイルを編集せずに /ターゲット /テストクラスにコピーします。
私のgmavenプラグインはどのように見えますか
<plugin>
<groupId>org.codehaus.gmaven</groupId>
<artifactId>gmaven-plugin</artifactId>
<version>1.3</version>
<executions>
<execution>
<goals>
<goal>generateStubs</goal>
<goal>compile</goal>
<goal>generateTestStubs</goal>
<goal>testCompile</goal>
</goals>
<configuration>
<providerSelection>1.7</providerSelection>
</configuration>
</execution>
</executions>
<dependencies>
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-all</artifactId>
<version>${groovy.version}</version>
</dependency>
</dependencies>
</plugin>
解決 3
Scrated Idea Project(IPRファイル)を削除して作成することで解決しました
他のヒント
私は同じ問題を抱えていたので、次の設定でアイデアを変更する必要がありました:設定 - >コンパイラ - >リソースパターン
そうだった !?*。Java
私はそれを変更しました!?.java;!?。形;!?。クラス;!?.groovy;!?.scala;!?。フレックス;!?.kt;!?.clj
ただし、POMファイルに指定できる方が良いでしょうが、まだ道を見つけていません。
Gmavenプラグインは、Maven Compilationのみを目的としています。 Ideaは、Groovy-All Jarに含まれるGroovyコンパイラを使用します。プロジェクトの依存関係を追加することを理解するために、例:
...
<groupId>yourproject</groupId>
<artifactId>yourproject</artifactId>
<version>1.0.0-SNAPSHOT</version>
<dependencies>
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-all</artifactId>
<version>${groovy.version}</version>
</dependency>
</dependencies>
...
フォルダータイプのグルーヴィーファイルをソースルートとして変更してください。同じのステップは、フォルダを右クリックします - > [選択]オプション - ' - ' - >ソースルートを作成する
上記のように、私はそれを変更しました!?.java;!?。形;!?。クラス;!?.groovy;!?.scala;!?。フレックス;!?.kt;!?.cljこの設定は、私のIntellijですでに利用可能でした。それでも、コードは[設定] - >コンパイラとコンパイルを確認して、並行してコンパイルしたコンパイルをチェックしてから生成され、その後生成されました。
これは @opalの回答に似ていますが、質問で尋ねられるように、テストに関連しています。
IDEでは、ファイル - >プロジェクト構造 - >プロジェクト設定 - >モジュールに移動します。プロジェクトファイルでツリーSRC-> test-> Groovyディレクトリを選択します。 alt+tを押して、groovyディレクトリをテストソースルートにする
設定を確認してください|コンパイラ|リソースパターン。 *.groovyはそこに何らかの形で適しているようであるため、コンパイルされる代わりに出力にコピーされているようです。
フォルダータイプのグルーヴィーファイルを変更して、ソースルートとしてディレクトリを作成する必要があります。