程序问答   发布时间:2022-06-01  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了Maven 设置为忽略 `wsdl2java` 这是否会导致部署时 Wildfly 内存过高和启动缓慢?大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

如何解决Maven 设置为忽略 `wsdl2java` 这是否会导致部署时 Wildfly 内存过高和启动缓慢??

开发过程中遇到Maven 设置为忽略 `wsdl2java` 这是否会导致部署时 Wildfly 内存过高和启动缓慢?的问题如何解决?下面主要结合日常开发的经验,给出你关于Maven 设置为忽略 `wsdl2java` 这是否会导致部署时 Wildfly 内存过高和启动缓慢?的解决方法建议,希望对你解决Maven 设置为忽略 `wsdl2java` 这是否会导致部署时 Wildfly 内存过高和启动缓慢?有所启发或帮助;

我正在开发 https://github.com/CONNECT-Solution/CONNECT 的(目前是私有的)分支

我观察到它至少需要 Xmx=2g 才能启动,即便如此,在任何合理的时间内启动也需要 6-8GB。

我在启动期间进行了堆转储,并在堆上观察了以下类,JAXBContextImpl 似乎很重要:

Maven 设置为忽略 `wsdl2java` 这是否会导致部署时 Wildfly 内存过高和启动缓慢?

当以较低的 Xmx 值(例如 Xmx=512m)运行时,我会收到如下错误:

23:28:42,607 INFO  [org.springframework.beans.factory.xml.XmlBeanDeFinitionReader] (MSC service thread 1-2) Loading XML bean deFinitions from class path resource [CONNECT-context.xml]
23:31:05,802 WARN  [org.springframework.web.context.support.XmlWebApplicationContext] (MSC service thread 1-3) Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.beanCreationException: Error creaTing bean with name 'AdapterMpiservice': Invocation of init method Failed; nested exception is java.lang.outOfMemoryError: Java heap space
23:31:05,824 ERROR [org.jboss.msc.service.fail] (MSC service thread 1-3) MSC000001: Failed to start service jbosS.Undertow.deployment.default-server.default-host./Adapter/PatIEntdiscovery/A_0: org.jboss.msc.service.StartException in service jbosS.Undertow.deployment.default-server.default-host./Adapter/PatIEntdiscovery/A_0: Failed to start service
    at org.jboss.msc.service.serviceControllerImpl$startTask.run(serviceControllerImpl.java:1904) [jboss-msc-1.2.2.Final.jar:1.2.2.Final]
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [rt.jar:1.8.0_191]
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [rt.jar:1.8.0_191]
    at java.lang.Thread.run(Thread.java:748) [rt.jar:1.8.0_191]
Caused by: org.springframework.beans.factory.beanCreationException: Error creaTing bean with name 'AdapterMpiservice': Invocation of init method Failed; nested exception is java.lang.outOfMemoryError: Java heap space
    at org.springframework.beans.factory.support.AbstractautowireCapablebeanfactory.initializeBean(AbstractautowireCapablebeanfactory.java:1572)
    at org.springframework.beans.factory.support.AbstractautowireCapablebeanfactory.doCreateBean(AbstractautowireCapablebeanfactory.java:539)
    at org.springframework.beans.factory.support.AbstractautowireCapablebeanfactory.createBean(AbstractautowireCapablebeanfactory.java:476)
    at org.springframework.beans.factory.support.Abstractbeanfactory$1.getobject(Abstractbeanfactory.java:303)
    at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230)
    at org.springframework.beans.factory.support.Abstractbeanfactory.doGetBean(Abstractbeanfactory.java:299)
    at org.springframework.beans.factory.support.Abstractbeanfactory.getBean(Abstractbeanfactory.java:194)
    at org.springframework.beans.factory.support.Defaultlistablebeanfactory.preInstantiateSingletons(Defaultlistablebeanfactory.java:755)
    at org.springframework.context.support.AbstractApplicationContext.finishbeanfactoryInitialization(AbstractApplicationContext.java:762)
    at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:480)
    at org.apache.cxf.transport.servlet.CXFServlet.createSpringContext(CXFServlet.java:151)
    at org.apache.cxf.transport.servlet.CXFServlet.loadBus(CXFServlet.java:74)
    at org.apache.cxf.transport.servlet.CXFNo@R_301_6648@ingServlet.init(CXFNo@R_301_6648@ingServlet.java:77)
    at io.undertow.servlet.core.lifecyleInterceptorInvocation.proceed(lifecyleInterceptorInvocation.java:117)
    at org.wildfly.extension.undertow.security.RunAslifecycleInterceptor.init(RunAslifecycleInterceptor.java:79)
    at io.undertow.servlet.core.lifecyleInterceptorInvocation.proceed(lifecyleInterceptorInvocation.java:103)
    at io.undertow.servlet.core.ManagedServlet$DefaulTinstanceStrategy.start(ManagedServlet.java:220)
    at io.undertow.servlet.core.ManagedServlet.createServlet(ManagedServlet.java:125)
    at io.undertow.servlet.core.DeploymentManagerImpl.start(DeploymentManagerImpl.java:509)
    at org.wildfly.extension.undertow.deployment.UndertowDeploymentservice.startContext(UndertowDeploymentservice.java:88)
    at org.wildfly.extension.undertow.deployment.UndertowDeploymentservice.start(UndertowDeploymentservice.java:72)
    at org.jboss.msc.service.serviceControllerImpl$startTask.startservice(serviceControllerImpl.java:1948) [jboss-msc-1.2.2.Final.jar:1.2.2.Final]
    at org.jboss.msc.service.serviceControllerImpl$startTask.run(serviceControllerImpl.java:1881) [jboss-msc-1.2.2.Final.jar:1.2.2.Final]
    ... 3 more

我认为正在发生的是应用程序在部署时生成网络服务。我想在编译时生成那些。

我看到 https://github.com/CONNECT-Solution/CONNECT/blob/CONNECT_integration/Product/Production/pom.xml 中的 wsdl2java 似乎被禁用:

<pluginExecution>
                                    <pluginExecutionFilter>
                                        <groupID>org.apache.cxf</groupID>
                                        <artifactID>cxf-codegen-plugin</artifactID>
                                        <versionRange>[2.6.0,)</versionRange>
                                        <goals>
                                            <goal>wsdl2java</goal>
                                        </goals>
                                    </pluginExecutionFilter>
                                    <action>
                                        <ignore />
                                    </action>
                                </pluginExecution>

我还看到 https://github.com/CONNECT-Solution/CONNECT/blob/CONNECT_integration/Product/Production/Common/Properties/pom.xml 中跳过了 cxf-codegen-plugin :

        <plugin>
            <groupID>org.apache.cxf</groupID>
            <artifactID>cxf-codegen-plugin</artifactID>
            <configuration>
                <skip>true</skip>
            </configuration>
        </plugin>

问题:

  1. 启动时内存使用缓慢和高内存使用率是由网络服务生成造成的吗?
  2. 重新启用 wsdl2java 和/或 cxf-codegen-plugin 会提高部署时的速度或内存利用率吗?
  3. 在编译时而不是部署时构建这些网络服务,我是否会将任何动态功能置于风险之中?
  4. @H_674_58@

    解决方法

    暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

    如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

    小编邮箱:dio#foxmail.com (将#修改为@)

    大佬总结

    以上是大佬教程为你收集整理的Maven 设置为忽略 `wsdl2java` 这是否会导致部署时 Wildfly 内存过高和启动缓慢?全部内容,希望文章能够帮你解决Maven 设置为忽略 `wsdl2java` 这是否会导致部署时 Wildfly 内存过高和启动缓慢?所遇到的程序开发问题。

    如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

    本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
    如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签: