加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

scala – 使用sbt编译Java注释

发布时间:2020-12-16 18:11:30 所属栏目:安全 来源:网络整理
导读:我在$PROJECT / src / main / java下创建了 Java注释(因为我需要运行时保留),我的scala代码在$PROJECT / src / main / scala下使用这些java注释.这样创建的Java注释也使用Java ENUM作为它的值. 如果我编译项目,那么sbt似乎不会首先编译Java注释,并且在注释中
我在$PROJECT / src / main / java下创建了 Java注释(因为我需要运行时保留),我的scala代码在$PROJECT / src / main / scala下使用这些java注释.这样创建的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源代码,我很确定你运气不好,而评论 – 编译 – 取消注释技巧可能是你最好的选择.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读