我有一个包信息类,它以前在Java 6/7中编译。但是在Java 8中,我会遇到编译错误:
* * * * *错误:批注类型不适用于这种声明@NamedNativeQueries({
错误:注释类型不适用于这种声明@SqlResultSetMappings({*****
这是代码:
@NamedNativeQueries({
@NamedNativeQuery(name = "",
query = "",
resultSetMapping = "mapping"
),
NamedNativeQuery(
name = "",
query = "",
callable = true,
readOnly = false,
resultSetMapping = ""
)
})
@SqlResultSetMappings({
})
package abc.domain;
import javax.persistence.ColumnResult;
import javax.persistence.EntityResult;
import javax.persistence.FieldResult;
import javax.persistence.NamedNativeQueries;
import javax.persistence.NamedNativeQuery;
import javax.persistence.SqlResultSetMapping;
import javax.persistence.SqlResultSetMappings;
先谢谢你的帮助
你一定是记错了;它没有也从来没有在java7上工作过(这是amedNativeQueries
的java7文档-注意它如何有一个@Target(value=TYPE)
标记,所以它不能放在一个包上,这是文档的v7版本!)
你把这样的东西放在一个类型上,比如顶级类型。这意味着注释出现在顶部附近,但是在package语句之后。假设您在< code>package-info.java文件中使用它们,它们就不能出现在这里(永远也不能)。
SqlResultSet映射
是相同的。
很有可能< code>javac7没有真正检查这些注释的< code>Target条件。然而,这仅仅意味着你的代码从来没有工作过,即使它编译了。
我没有正确使用注释吗? 编译错误: 注释工作正常,可以毫无问题地访问该网页。
我正在学习Spring和Data JPA。我对Ehcache有问题。我想缓存我的一个方法的返回值,该方法从数据库返回一些记录。这是一个预配置Ehcache实例的练习(我假设)。问题是,我不能使用注释@cacheable将我的方法标记为它的返回值应该被缓存的方法。我得到一个不兼容类型编译错误(Required:boolean,Found:String)。下面是我的服务层中的一个类,我认为我应该将@c
2.11 和爪哇7。我正在尝试使用@XmlSchema注释我的包如下所示。 然而,我得到了这个编译错误,“注释类型不适用于这种声明” 有人知道为什么会发生这种事吗?
我正在尝试编译我正在编写的Java Web应用程序,并且我遇到了编译错误,我不知道该怎么办。从我完成的谷歌搜索中,我发现了这个SO问题,但是提问者使用的是EJB,而我的错误是在JPA实体类中。 下面是maven构建错误。 这是我的用户类文件。 我查看了javax.persistence.Index JavaDoc,我的声明是正确的,所以我在这里被难住了,有人知道我做错了什么吗?感谢您的时间和考虑。
我试图创建一个基本的存储库,这样我就可以获得Postgres支持的我所在地区的时区。我得到错误“注释类型不适用于这种声明。”我应该如何处理这个问题?为什么不允许我在这里定义查询?
我有一个焊接限定符注释声明如下: 我的豆子界面是这样的: 合格的实现是这样的: Maven编译器说(在AccountResponseResponder.java): 我确信我错过了一些明显的东西,但它是什么逃避了我。任何帮助将不胜感激。