java - 使用 Spring 4 PropertySource 时找不到可重复

标签 java spring

我们将 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/

相关文章:

java - Thymeleaf + Spring(不是 Boot)- 如何显示来自 messageSource 的消息

java - 使用 Java 8 的 Spring 4 + MyBatis 集成问题

java - 从在 Tomcat 上运行的 Spring Controller 使用 Runtime.getRuntime().exec 调用基于 .Net Window 的应用程序

java - Java中静态变量的使用

java - 向数据库添加更多问题以用于测试应用程序

java - 每分钟都会调用远程 Web 服务,而无需我调用它们

java - 谁能解释一下类级 Controller 和方法级 Controller 之间的区别..?

java - 我试图做一个 void 来检查是否是真的,如果是的话,让一个字符串根据什么是真的说些什么

java - 从 jframe 发送到 java 类,然后从其他 jframe 访问它们

Spring Data - MongoDB - JUnit 测试