プロジェクトを「unmavenize」する必要はありません。(ただし、そのように提案するトラブルシューティングの理由は理解しています。) 問題はキャッシュまたはインデックスの破損であると思われます。[ファイル] > [キャッシュの無効化]に移動します。選択してキャッシュを無効にし、IDEA を再起動します。IDEA にプロジェクトのインデックスを再作成させます。物事はうまくいくはずです。そうでない場合は、1) IDEA の最新バージョン (12.1.5) を使用していること、および 2) Groovy プラグインの最新バージョン ( [ファイル] > [設定] > [IDE 設定] > [プラグイン] ) を確認してください。
Maven を使用する場合は、「groovy」ディレクトリを POM の追加のソース ディレクトリとして識別する必要があります。そうしないと、IDEA がプロジェクトを再インポートする (つまり、POM に再同期する) ときに、groovy
デフォルトで maven がソースと見なさないため、ディレクトリがソースとして削除されます。これを行う方法は、使用するプラグインによって異なります。GMavenはメンテナンスされなくなったため、groovy-eclipse-compilerプラグインを使用しています。そのプラグインを使用する場合、プラグインはsrc/main/groovy
ソースとして自動的にインクルードします (ただし、少なくとも 1 つの Java または groovy ファイルが に含まれている必要がありますsrc/main/java
)。ただし、IDEA はそのディレクトリを取得せず、ソースとしても含めます。つまり、手動で (または IDEA が自動的に) Maven の再インポートを実行すると、src/main/groovy
ディレクトリはソースとしてマークされなくなり、IDEA はコンパイル エラーを表示します。追加のディレクトリを指定する必要があります。groovy-eclipse-compiler のドキュメントで推奨されているように、build-helper-maven-plugin を使用してこれを行うことができます。
動作中の Java/Groovy プロジェクトの POM の要点は次のとおりです。
<properties>
<groovy.version>2.1.5</groovy.version>
<groovy-eclipse-compiler.version>2.8.0-01</groovy-eclipse-compiler.version>
</properties>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.1</version>
<configuration>
<compilerId>groovy-eclipse-compiler</compilerId>
</configuration>
<dependencies>
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-eclipse-compiler</artifactId>
<version>${groovy-eclipse-compiler.version}</version>
</dependency>
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-eclipse-batch</artifactId>
<version>2.1.5-03</version>
<scope>compile</scope>
</dependency>
</dependencies>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
<executions>
<execution>
<id>add-source</id>
<phase>generate-sources</phase>
<goals>
<goal>add-source</goal>
</goals>
<configuration>
<sources>
<source>src/main/groovy</source>
</sources>
</configuration>
</execution>
<execution>
<id>add-test-source</id>
<phase>generate-test-sources</phase>
<goals>
<goal>add-test-source</goal>
</goals>
<configuration>
<sources>
<source>src/test/groovy</source>
</sources>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
<dependencies>
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-all</artifactId>
<version>${groovy.version}</version>
</dependency>
</dependencies>