我有以下斯卡拉文件:为什么我需要jsr305在scala中使用番石榴?
object SGuavaTryout {
com.google.common.cache.CacheBuilder.newBuilder()
}
我在classpath番石榴11.0.2.jar编译。我的斯卡拉2.9.1编译器(包括Eclipse插件和滑动scalac)抱怨:
error while loading CacheBuilder, Missing dependency
'class javax.annotation.CheckReturnValue', required by
D:\devel\eclipse-workspace\Scala Spielwiese\guava-11.0.2.jar
(com/google/common/cache/CacheBuilder.class)
进行编译,我需要JSR305(jsr305-1.3.9.jar)添加到构建路径。没有jsr305的java编译就好:
public class JGuavaTryout {
public void tryout() {
com.google.common.cache.CacheBuilder.newBuilder();
}
}
任何想法为什么scala需要jsr305?是否有官方的jsr305实现与番石榴一起使用?
谢谢! - Georg
Java编译器特别不关注注释类型,但我认为所有其他类型都需要可用。 – 2012-11-14 08:22:57
斯卡拉2.11.1及以上版本现在优雅地处理缺失的注释;您不再需要classpath上的jsr305。 – retronym 2014-11-13 04:28:17