参考Scala in a Java Maven Project。项目中包含scala和java混合代码时,需要添加对应的maven插件:scala-maven-plugin即可(不需要安装scala环境)。
官方文档说明。执行对应定义的goal即可。mvn scala:help
或者mvn scala:compile
<project>
...
<build>
<sourceDirectory>src/main/scala</sourceDirectory>
<testSourceDirectory>src/test/scala</testSourceDirectory>
...
<plugins>
...
<plugin>
<groupId>net.alchim31.maven</groupId>
<artifactId>scala-maven-plugin</artifactId>
<version>4.5.3</version>
... (see other usage or goals for details) ...
</plugin>
...
</plugins>
...
</build>
...
</project>
混合项目打包需要向将scala代码编译后才能在打包时识别出来(idea IDE中安装scala的插件是在ide中识别对应的代码,但跟打包没关系),统一打包命令mvn clean scala:compile package
依次执行对应的goal。确保scala的命令在package之前执行即可。
在ide的maven插件中,可以现在plugins
模块下选择执行scala:compile
,然后再执行主工程的package——实测也可以打包成功。
注:因为package相当于执行“项目编译、单元测试、打包功能”,maven的生命周期还是要理解清楚
网友评论