Я определяю definterface
для использования с сервером REST JAX-RS ( RESTEasy ):
(ns com.example.server.resources.buildtime
(:import [javax.ws.rs.core Cookie UriInfo]))
(definterface BuildTime
(getBuildTime [^UriInfo info
^Cookie security-cookie]))
Когда я компилирую этот класс AOT, я получаю следующееошибка:
Exception in thread "main" java.lang.NoClassDefFoundError: java/lang/UriInfo, compiling:(com/example/server/resources/buildtime.clj:13)
Если я изменю аннотации на следующие, ошибка исчезнет:
(definterface BuildTime
(getBuildTime [^javax.ws.rs.core.UriInfo info
^javax.ws.rs.core.Cookie security-cookie]))
Почему аннотации должны иметь полные имена классов, когда классы были импортированыиспользуя import:
?