Prz*_*wka 10 java compiler-construction scala compilation intellij-idea
在我的IDEA项目中,Scala模块依赖于Java模块.当我尝试编译Scala模块时,只触发scalac.它编译Java和Scala源代码.
我希望scalac只编译Scala模块,因为javac对Java源代码来说要快得多(而且我的Java项目很重要). 如何让IDEA为不同的模块使用不同的编译器?
我的解决方法是(对于Java模块的每个依赖项):
显然我对此并不满意,因为每次重新导入Maven项目时,我都需要重复所有这些以便快速编译.我希望有人知道更好的方法.
澄清:我想强调,像SBT或Maven这样的工具无法解决我的问题.它不仅仅是编译.它是关于IDEA中的编译,对于像Scala Worksheet或从IDEA运行单元测试所需.我的目标是使用SBT的编译速度获得全方位的IDEA细节(语法高亮,智能自动完成,自动导入等).现在我必须要么容忍很长的编译时间(由于我的Java模块的依赖性),要么在SBT中使用裸机REPL和测试.
Randall Schulz在评论中提出了正确的问题:“为什么使用哪个工具进行编译很重要? ”到目前为止,我认为如果你想使用 IDEA 的优秀功能(例如 IDEA 的 Scala Console 或从其中运行测试)。我错了。
事实上,IDEA 会选择任何其他工具(例如伟大的 SBT)编译的类。在使用 IDEA 的任何有用功能之前,您只需确保所有类都是最新的。最好的方法是:
就这样!然后,您可以使用 IDEA 的所有炫酷功能(不仅是语法突出显示和代码完成,还包括 Scala Console 中的所有自动导入,快速运行选定的单元测试),而无需在不同窗口之间切换。这就是我到现在为止错过的工作流程!感谢大家对这个问题的所有评论。
归档时间: |
|
查看次数: |
1677 次 |
最近记录: |