我发现通过使用 json4s native

    <dependency>
        <groupId>org.json4s</groupId>
        <artifactId>json4s-native_2.10</artifactId>
        <version>3.2.9</version>
    </dependency>

带来 scalap 和 scala-compiler 依赖项。

为什么需要它?

它是否在运行时动态生成代码?

为什么不使用在编译时执行此处理的宏?

最佳答案

json4s 的人在 this issue 中回答了我以下内容:

因为我们需要读取字节码来找出有关Scala原语的信息。这在 2.9 上比在 2.10 上更必要

关于scala - 为什么 json4s 需要一个 Scala 编译器作为运行时依赖,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/24446832/

10-11 22:25