나는 Clojure에서 쓰고있는 BaseXJava interface을위한 모듈을 가지고있다. 인터페이스는 메소드를 호출하고 최적화하는 방법을 결정하는 데 사용할 수있는 여러 가지 주석을 제공합니다. QueryModule$Requires
및 QueryModule$Deterministic
주석이 자동으로 삭제됩니다 -Clojure : AOT로 컴파일 된 메소드에 주석 첨부하기
(ns net.dyfis.svnkit_wrapper.SvnWrapper
(:import (org.basex.query QueryModule
QueryModule$Requires
QueryModule$Permission
QueryModule$Deterministic))
(:gen-class
:main false
:extends org.basex.query.QueryModule
:methods [
^{:static true}
[^{QueryModule$Requires QueryModule$Permission/NONE,
Deprecated {}}
cat [java.lang.String] java.lang.String]
^{:static true}
[^{QueryModule$Deterministic {},
QueryModule$Requires QueryModule$Permission/NONE}
catRev [java.lang.String int] java.lang.String]]))
그러나 만 사용되지 않는 주석이 첨부됩니다 :
>>> cat
public static java.lang.String net.dyfis.svnkit_wrapper.SvnWrapper.cat(java.lang.String)
>>> cat.getAnnotations()
array(java.lang.annotation.Annotation,[@java.lang.Deprecated()])
그러나, 나는이 실제로 생성 된 클래스에 연결하는데 문제가 있어요 Clojure 1.4.0-beta6에서는 AOT로 컴파일 된 메소드의 주석에 대한 지원이 Clojure 1.2에서 제공되는 것으로 간주되지만이 문제가 발생합니다. 따라서, 이것은 아마도 사용 오류 일 것입니다.하지만 어떻게 다르게해야합니까?