2.11和java7。我尝试使用@XmlSchema
注释我的包,如下所示。
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlNsForm;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlSchema;
@XmlSchema(namespace = "http://www.sitemaps.org/schemas/sitemap/0.9",
elementFormDefault = XmlNsForm.QUALIFIED)
@XmlRootElement(name="urlset")
public class Urlset {
private String name;
@XmlElement
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
但是我得到了这个编译错误,"注释类型不适用于这种声明"
有人知道为什么会发生这种情况吗?
答案 0 :(得分:4)
@XmlSchema
注释是包注释,因此将其放在名为package-info.java
的文件中,该文件位于与Urlset.java
相同的源目录中,如此:
@XmlSchema(namespace = "http://www.sitemaps.org/schemas/sitemap/0.9",
elementFormDefault = XmlNsForm.QUALIFIED)
从Urlset
课程中删除相同的注释。