Java中Annotation的数组参数的一个问题
今天写代码,发现一个很蛋疼的问题.具体如下
首先定义了一个annotation
@Retention(RetentionPolicy.RUNTIME)@Target(ElementType.METHOD)public @interface ClearCache {String[] value() default {};}这个value是一个String数组.但是我在用的时候就发现问题了.

而
/** * 新增类目 * @param category * @return */@ClearCache({JC_FRONT_CATE,JC_BACK_CATE+SIMPLE_CATEGORY_TYPE,JC_BACK_CATE+LIFE_CATEGORY_TYPE})public int insertCategory(JuCategoryDO category) throws DAOException;这样就不会有问题了..
刚开始以为是ECJ的问题,但是用javac试了下.

哎,伤不起. 1 楼 lvjun106 2012-04-23 学习了。
但是提示已经很清楚了,需要一个数组初始化的写法。
可能是你第一次传了一个数组变量的引用,JAVA在编译时通不过。