You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

混合Scala/Java项目的编译顺序与跨语言依赖配置相关问题

scala-maven-plugin 混编Java/Scala常见问题解答

1. 默认配置下的编译顺序

默认配置下会先编译Java代码,再编译Scala代码。此时仅支持Scala代码依赖Java代码,Java代码无法引用Scala侧的类。

2. 单向依赖的配置方式

  • 若仅需要 Scala依赖Java:直接使用默认配置即可,无需额外调整。
  • 若需要 Java依赖Scala:可以通过插件的scala-compile-first参数实现,将该参数配置为true后,插件会调整执行顺序,先完成Scala代码编译,再执行Java编译,Java代码即可正常引用Scala类。
    如果不想调整编译顺序,也可以选择启用插件的联合编译模式,禁用maven-compiler-plugin的默认编译逻辑,让scala-maven-plugin统一处理两类代码的编译。

3. 双向依赖的支持情况

支持Java和Scala双向依赖的场景。
你只需要启用scala-maven-plugin的联合编译功能即可:该模式下插件会同时扫描所有Java和Scala源码,统一解析符号依赖,不管是Java调用Scala还是Scala调用Java的类,都能正常完成编译,不需要手动调整两类代码的编译顺序。

内容的提问来源于stack exchange,提问作者Litchy

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.07 05:30:05