gpt4 book ai didi

scala - 使用 sbt 编译 Java 注释

转载 作者:行者123 更新时间:2023-12-05 00:33:50 25 4
gpt4 key购买 nike

我在 $PROJECT/src/main/java 下创建了 Java 注释(因为我需要保留运行时)以及我在 $PROJECT/src/main/scala 下使用这些 java 注释的 Scala 代码.这样创建的 Java 注释也使用 Java ENUM 作为它的值。

如果我编译项目,那么 sbt 似乎不会首先编译 Java 注释,并且在注释中每次使用枚举时都会出错。如果我在 Scala 代码的注释中注释掉 Java 枚举的所有用法并进行编译,取消注释枚举用法并再次编译,一切正常。

在执行干净构建时尝试编译 Scala 代码之前,如何确保 sbt 编译我的 java 注释和枚举(即 $PROJECT/src/main/java )?

编辑:我有一个裸骨 build.sbt 并且正在使用 sbt 0.11.2

最佳答案

一些好消息:这是a known issue并已解决。

一些坏消息:它已在 2.10 中解决,并且该修复程序可能不会向后移植到 2.9.3(在问题线程中引用 Paul Phillips):

I've tagged this for backporting, which is not a guarantee; I don't have time to do it right now but I expect to in the near future.



一些好消息:如果您坚持使用 2.10 之前的版本并且您的 Java 源代码不依赖于您的 Scala 源代码, you can just add the following给您的 build.sbt一切都很好:
compileOrder := CompileOrder.JavaThenScala

一些坏消息:如果您坚持使用 2.10 之前的版本并且您的 Java 源代码确实依赖于您的 Scala 源代码,那么我很确定您不走运,而注释-编译-取消注释技巧可能是您最好的选择。

关于scala - 使用 sbt 编译 Java 注释,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11493543/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com