小编agi*_*ert的帖子

使用Eclipse中依赖项导入的模式编辑xsd

我有一个maven项目A,在它的classpath中有/xsd/a.xsd.我还有一个带有/xsd/b.xsd的项目B,它通过商品引用/xsd/a.xsd.商品目录如下所示:

PUBLIC "http://foo.org/a" "maven:org.foo:a:jar::!/xsd/a.xsd"
Run Code Online (Sandbox Code Playgroud)

请注意网址中的maven协议.org.jvnet.jaxb2.maven2:maven-jaxb22-plugin使用该目录生成带有依赖项集的JAXB带注释的Java类.

到目前为止一切都很好.

现在我想在Eclipse中编辑/xsd/b.xsd.Eclipse报告警告:

<xsd:import namespace="http://foo.org/a" />
Run Code Online (Sandbox Code Playgroud)

因为没有schemaLocation属性它找不到/xsd/a.xsd.Eclipse无法识别上面定义的商品.

找到的解决方法是在Eclipse/Window/Preferences/XML/XML Catalog中添加一个目录条目:

PUBLIC "http://foo.org/a" "jar:file:/home/alain/maven/repository/org/foo/a/1.0-SNAPSHOT/a-1.0-SNAPSHOT.jar!/xsd/a.xsd"
Run Code Online (Sandbox Code Playgroud)

请注意对本地存储库的引用(maven是.m2的链接)和依赖项目的特定版本a.

任何人都遇到过这个问题并找到了更好的解决方法?

jaxb xmlcatalog eclipse-wtp m2e-wtp

7
推荐指数
1
解决办法
1498
查看次数

标签 统计

eclipse-wtp ×1

jaxb ×1

m2e-wtp ×1

xmlcatalog ×1