为什么我需要jsr305在scala中使用番石榴?
发布时间:2020-12-16 09:40:11 所属栏目:安全 来源:网络整理
导读:我有以下scala文件: object SGuavaTryout { com.google.common.cache.CacheBuilder.newBuilder()} 我在classpath中使用guava-11.0.2.jar进行编译。我的scala 2.9.1编译器(eclipse插件和普通scalac)抱怨: error while loading CacheBuilder,Missing depende
我有以下scala文件:
object SGuavaTryout { com.google.common.cache.CacheBuilder.newBuilder() } 我在classpath中使用guava-11.0.2.jar进行编译。我的scala 2.9.1编译器(eclipse插件和普通scalac)抱怨: error while loading CacheBuilder,Missing dependency 'class javax.annotation.CheckReturnValue',required by D:develeclipse-workspaceScala Spielwieseguava-11.0.2.jar (com/google/common/cache/CacheBuilder.class) 要编译,我需要添加jsr305(jsr305-1.3.9.jar)到构建路径。 java等效编译只要没有jsr305: public class JGuavaTryout { public void tryout() { com.google.common.cache.CacheBuilder.newBuilder(); } } 任何想法为什么scala需要jsr305?有没有正式的jsr305实现与番石榴一起使用? 谢谢! – 乔治 解决方法
这是因为Scala编译器的设计方式,它需要一个类的所有类型在编译时可用,而Java编译器则无关紧要。
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |