我们将 Spring 4.0.1.RELEASE 与 jdk6 结合使用(已修复)。
当然,我们已经使用 @PropertySource
注释在 Java 中完成了配置。当我们使用 gradle 编译项目时,这会导致一个恼人的警告消息:
org\springframework\context\annotation\PropertySource.class(org\springframework\context\annotation:PropertySource.class): warning: Cannot find annotat ion method 'value()' in type 'java.lang.annotation.Repeatable': class file for java.lang.annotation.Repeatable not found
这是由(在 jdk6 中)不存在的可重复类的使用引起的,我很高兴这只是一个警告。 我喜欢 gradle 的干净输出,这很烦人,因为它可能会混淆其他“真实”警告(如 checkstyle ...)。
也许任何人都面临同样的问题,并为这种情况找到了一个(不是那么多黑客)解决方案。我只是想再次看到一个干净的输出。
最佳答案
我认为问题在于在 Spring 4 中,他们使用 @Repeatable
注释,仅在 Java 8 中引入。
因此,如果您不使用 Java 8,您将继续看到此问题,至少在此问题得到解决之前是这样。
顺便说一句,这也阻止了在 Java 8 之前的旧 JDK 中使用 @Scheduled
注释。我希望它会尽快修复。
关于java - 使用 Spring 4 PropertySource 时找不到可重复,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21598016/