我在编译其中一个注释时遇到了一个奇怪的错误,它抛出编译错误,例如
[javac] /src/main/java/com/FilterResult.java:29: incompatible types
[javac] found : com.FilterResult.Mode
[javac] required: com.FilterResult.Mode
[javac]Mode value() default Mode.ENABLE;
我的源代码内容如下:
package com;
import java.lang.annotation.Documented;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
@Documented
@Target(value=ElementType.METHOD)
@Retention(RetentionPolicy.RUNTIME)
public @interface FilterResult
{
public enum Mode { ENABLE, DISABLE };
Mode value() default Mode.ENABLE;
}
有人可以帮我解决这个问题吗?
使用的JDK版本是1.6U27,而且这个错误只有在我用ant编译时才会出现。直接jdk编译通过。