返回介绍

数学基础

统计学习

深度学习

工具

Scala

五、同时编译 Scala 和 Java

发布于 2023-07-17 23:38:22 字数 1677 浏览 0 评论 0 收藏 0

  1. 当编译依赖 Java 代码的 Scala 代码时,你首先将 Java 代码构建成 .class 文件。然后再编译 Scala 代码,并将 Java 代码的 class 文件放到 class path 中。

    不过,这种方式对于 Java 代码反过来引用 Scala 代码的情况就不行了。此时,无论你采用何种顺序编译代码,其中的某一方都会有未被满足的外部引用。

    为支持这样的场景,Scala 允许同时面对 Java 代码和 Java class 文件做编译。你只需要将 Java 代码放在命令行中,就当做它们是 Scala 文件那样。Scala 编译器不会编译这些 Java 文件,不过会扫描它们,看看它们包含了哪些内容。

    以下是同时编译 ScalaJava 的流程:

    • 首先利用 Java 源文件编译 Scala 代码:(-d 表示存放编译后的 class 文件的位置)

      
      
      xxxxxxxxxx
      scalac -d bin A.scala B.java C.java
    • 然后利用 Scala 编译出的 class 文件来编译 Java:(-cp 表示指定依赖的其它class 的路径,等价于 -classpath-d 表示编译后的 class 文件的位置)

      
      
      xxxxxxxxxx
      javac -cp bin -d bin B.Java C.java D.java

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文