6

Maven 项目,转移到另一台 PC 后出现错误。为什么?

[INFO] [jaxb2:generate {execution: default-cli}]
[INFO] ------------------------------------------------------------------------
[ERROR] FATAL ERROR
[INFO] ------------------------------------------------------------------------
[INFO] org.xml.sax.SAXParseException; systemId: jar:file:/.m2/repository/com/sun/xml/bind/jaxb-xjc/2.2.5-2/jaxb-xjc-2.2.5-2.jar!/com/sun/tools/xjc/reader/xmlschema/bindinfo/binding.xsd; lineNumber: 86; columnNumber: 48; src-resolve: Cannot resolve the name 'xjc:globalJavaType' to a(n) 'group' component.
[INFO] ------------------------------------------------------------------------
[INFO] Trace
java.lang.AssertionError: org.xml.sax.SAXParseException; systemId: jar:file:/.m2/repository/com/sun/xml/bind/jaxb-xjc/2.2.5-2/jaxb-xjc-2.2.5-2.jar!/com/sun/tools/xjc/reader/xmlschema/bindinfo/binding.xsd; lineNumber: 86; columnNumber: 48; src-resolve: Cannot resolve the name 'xjc:globalJavaType' to a(n) 'group' component.
    at com.sun.tools.xjc.SchemaCache.newValidator(SchemaCache.java:78)
    at com.sun.tools.xjc.reader.xmlschema.bindinfo.AnnotationParserFactoryImpl$1$1.startElement(AnnotationParserFactoryImpl.java:118)
    at com.sun.xml.xsom.impl.parser.state.NGCCRuntime.startElement(NGCCRuntime.java:253)
    ... 
4

4 回答 4

20

我有类似的问题。在我的情况下,本地 maven 存储库的路径包含西里尔符号。
我更改了我的 settings.xml 并将 <localRepository> 元素放在那里以仅使用拉丁符号指定新的存储库路径。这对我有用。

于 2013-02-14T14:26:28.267 回答
2

我也有类似的问题。事实证明,Windows 用户主路径包含带重音的字符,导致错误。它是:c:\Users\Géza.m2 我们换成了其他用户,一切都很好。

于 2014-04-28T17:24:21.330 回答
1

好吧,我找到了解决方案。(基于http://docs.oracle.com/javase/7/docs/api/javax/xml/XMLConstants.html#ACCESS_EXTERNAL_SCHEMA

在 /path/to/jdk1.8.0/jre/lib 下创建一个名为 jaxp.properties 的文件(如果它不存在),然后在其中写入以下行:

javax.xml.accessExternalSchema = all 就是这样。享受 JDK 8。

于 2014-06-09T11:26:59.867 回答
0
于 2017-08-24T17:37:56.990 回答