首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >XMLBeans无法加载SchemaTypeSystem。无法加载名称为schemaorg_apache_xmlbeans.system的类

XMLBeans无法加载SchemaTypeSystem。无法加载名称为schemaorg_apache_xmlbeans.system的类
EN

Stack Overflow用户
提问于 2021-03-16 22:38:11
回答 1查看 269关注 0票数 0

我正在尝试使用从github克隆的项目来运行SoapUI (来自版本控制的IntellijJ文件->新->项目):

代码语言:javascript
复制
git clone https://github.com/SmartBear/soapui.git

然后我运行maven编译,它没有错误。但是当我尝试运行这个应用程序时,我得到了以下错误:

代码语言:javascript
复制
15:20:40,429 WARN  [SoapUI] Missing folder [C:\%USERPROFILE%\IdeaProjects\soapui\ext] for external libraries
15:20:40,429 WARN  [SoapUI] Missing folder [C:\%USERPROFILE%\IdeaProjects\soapui\ext] for external libraries
Exception in thread "AWT-EventQueue-0" java.lang.ExceptionInInitializerError
    at com.eviware.soapui.config.SoapuiSettingsDocumentConfig$Factory.parse(SoapuiSettingsDocumentConfig.java:59)
    at com.eviware.soapui.DefaultSoapUICore.initSettings(DefaultSoapUICore.java:261)
    at com.eviware.soapui.SwingSoapUICore.initSettings(SwingSoapUICore.java:99)
    at com.eviware.soapui.DefaultSoapUICore.init(DefaultSoapUICore.java:143)
    at com.eviware.soapui.StandaloneSoapUICore.<init>(StandaloneSoapUICore.java:38)
    at com.eviware.soapui.SoapUI$SoapUIRunner.run(SoapUI.java:792)
    at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:313)
    at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:770)
    at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:721)
    at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:715)
    at java.base/java.security.AccessController.doPrivileged(AccessController.java:389)
    at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85)
    at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:740)
    at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
    at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
    at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
    at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
    at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
    at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)
Caused by: java.lang.RuntimeException: Cannot load SchemaTypeSystem. Unable to load class with name schemaorg_apache_xmlbeans.system.s05EC9A3AACC8687CD214E9B1A496DB91.TypeSystemHolder. Make sure the generated binary files are on the classpath.
    at org.apache.xmlbeans.XmlBeans.typeSystemForClassLoader(XmlBeans.java:788)
    at com.eviware.soapui.config.SoapuiSettingsDocumentConfig.<clinit>(SoapuiSettingsDocumentConfig.java:20)
    ... 19 more
Caused by: java.lang.ClassNotFoundException: schemaorg_apache_xmlbeans.system.s05EC9A3AACC8687CD214E9B1A496DB91.TypeSystemHolder
    at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:583)
    at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178)
    at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:521)
    at org.apache.xmlbeans.XmlBeans.typeSystemForClassLoader(XmlBeans.java:774)
    ... 20 more

这里有一个到POM的链接:https://github.com/SmartBear/soapui/blob/next/soapui/pom.xml

在阅读了一些类似的问题后,我认为POM有问题,但我不知道是什么问题。有什么提示吗?

EN

回答 1

Stack Overflow用户

发布于 2021-06-01 18:29:44

嗨,我得到了同样的问题,并解决了它。

事情就发生在这里。

代码语言:javascript
复制
settingsDocument = SoapuiSettingsDocumentConfig.Factory.newInstance();

public static final class Factory
{
    public static com.eviware.soapui.config.SoapuiSettingsDocumentConfig newInstance() {
      return (com.eviware.soapui.config.SoapuiSettingsDocumentConfig) org.apache.xmlbeans.XmlBeans.getContextTypeLoader().newInstance( type, null ); }

根本原因是这一个。

无法加载此类。"org.apache.xmlbeans.XmlBeans.getContextTypeLoader()“

这个解决方案是一个添加带有依赖项的jar插件。

Error when using XmlBeans generated classes

http://maven.apache.org/plugins/maven-assembly-plugin/descriptor-refs.html#jar-with-dependencies

您必须在pom.xml中添加两个块

代码语言:javascript
复制
            <build>
            <plugins>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-assembly-plugin</artifactId>
                    <version>3.3.0</version>
                    <configuration>
                        <archive>
                            <manifest>
                                <mainClass>fully.qualified.MainClass</mainClass>
                            </manifest>
                        </archive>
                        <descriptorRefs>
                            <descriptorRef>jar-with-dependencies</descriptorRef>
                        </descriptorRefs>
                    </configuration>
                </plugin>
            </plugins>
        </buid>

代码语言:javascript
复制
        <dependency>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-assembly-plugin</artifactId>
        <version>3.3.0</version>
    </dependency>
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66657394

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档