scala - 为什么 json4s 需要一个 Scala 编译器作为运行时依赖

标签 scala json4s

我发现通过使用 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/

相关文章:

regex - Scala - 从字符串中去除除链接之外的所有 html 标签

scala - 从解析日期获取年、月、日

arrays - Scala重复数组

java - System.exit 在 "sbt run"中工作,但在 .jar 中不起作用

json - 使用 json4s 在 Scala 应用程序中生成 json

json - json4s中 `render`的用途

json4s 无法使用 mixin 特征序列化案例类

scala - 程序在使用 scala 运行时可以正常工作,但在尝试使用 scalac 编译时出现编译错误

scala - 如何编写处理集合的 json4s CustomSerializer

maven - Spark Streaming + json4s-jackson 依赖问题