簡體   English   中英

Ant中的Java編譯錯誤:在注釋中使用類文字

[英]Java compile error in Ant: using class literals in annotations

我在類上有以下Java注釋(它是myBatis插件):

@Intercepts({ @Signature(type = ResultSetHandler.class, method = "handleResultSets", args = (Statement.class)) })
public class MyResultSetHandlerPlugin implements Interceptor {
    //do stuff...
}

它在Eclipse中編譯和工作正常,但在嘗試運行Ant構建腳本時,我收到以下錯誤:

[javac] C:CLIP_PoC\src\com\lmig\am\claims\clip\MyPResultSetHandlerPlugin.java:27: annotation value must be a class literal
    [javac] @Intercepts({ @Signature(type = ResultSetHandler.class, method = "handleResultSets", args = (Statement.class)) })
    [javac]                                                                                             ^
    [javac] 1 error

我已經嘗試完全限定注釋中使用的類,但這會導致相同的錯誤。 對我做錯了什么的想法?

謝謝。

如果您嘗試將項目數組作為注釋參數傳遞,則需要使用花括號而不是括號來指示該項目是數組。

@Intercepts({ @Signature(type = ResultSetHandler.class, method = "handleResultSets", args = {Statement.class}) })

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM