我的项目正在使用Maven编译Java和Groovy类。我的项目使用maven编译和构建得很好,但我希望IDEA(IntelliJ)也能正确构建它。我使用maven通过以下命令生成IDEA项目文件:
mvn idea:idea
我注意到它没有构建groovy文件,只构建java文件。
我发现问题是,默认情况下,IDEA将所有没有.java扩展名的文件视为资源。
当我用maven IDEA插件生成项目文件时,我在知识产权文件中得到以下内容
<component name="CompilerConfiguration">
<option name="DEFAULT_COMPILER" value="Javac" />
<resourceExtensions />
<wildcardResourcePatterns>
<entry name="!?*.java" />
</wildcardResourcePatterns>
...
我必须以这种方式修改它,以便编译我的groovy文件(以及其他一些类型的文件):
<component name="CompilerConfiguration">
<option name="DEFAULT_COMPILER" value="Javac" />
<resourceExtensions />
<wildcardResourcePatterns>
<entry name="!?*.java" />
<entry name="!?*.groovy" />
<entry name="!?*.scala" />
<entry name="!?*.flex" />
</wildcardResourcePatterns>
...
注意:这些信息也可以在IDEA->Settings->Compiler->Resource patterns中找到/编辑
我可以使用以下命令正确生成它:
mvn idea:idea -DwildcardResourcePatterns="!?*.java;!?*.groovy;"
有人知道如何在pom.xml中配置它吗?
这需要添加到pom.xml 中
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-idea-plugin</artifactId>
<configuration>
<wildcardResourcePatterns>!?*.java;!?*.groovy;</wildcardResourcePatterns>
</configuration>
</plugin>