tengo el siguiente archivo de Scala:¿Por qué necesito jsr305 para usar guayaba en scala?
object SGuavaTryout {
com.google.common.cache.CacheBuilder.newBuilder()
}
compilo con guayaba-11.0.2.jar en la ruta de clase. Mi Scala 2.9.1 compilador (ambos plug-in de Eclipse y scalac llanura) se queja:
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)
Recopilar, tengo que añadir JSR305 (jsr305-1.3.9.jar) a la trayectoria de la estructura. El equivalente Java compila bien sin JSR305:
public class JGuavaTryout {
public void tryout() {
com.google.common.cache.CacheBuilder.newBuilder();
}
}
Cualquier idea por qué Scala requiere JSR305? ¿Hay una implementación oficial jsr305 para usar con guayaba?
Gracias! - Georg
El compilador de Java específicamente no se preocupa por los tipos de anotación, pero creo que todos los demás tipos deben estar disponibles. –
Scala 2.11.1 y superior ahora manejan las anotaciones faltantes con gracia; ya no necesitas jsr305 en el classpath. – retronym