当前位置: 首页 > 知识库问答 >
问题:

部署Spring Boot到weblogic 12

方和顺
2023-03-14

我用start创建了一个应用程序(spring boot 1.5.6)。Springio并尝试将其部署到Weblogic 12.1.3.0.0
管理控制台中的消息:

错误无法访问选定的应用程序。
错误java.io.IOExctive
错误weblogic.utils.compiler.ToolFailureExctive

日志中的消息:

这些链接没有帮助:
https://docs.spring.io/spring-boot/docs/1.5.x/reference/html/howto-traditional-deployment.html
在Weblogic中部署Spring Boot应用程序

更新:
问题在于JAX-RS的依赖关系。如果没有它,应用程序将成功部署。不确定如何使用此依赖项
更新x2:
删除了Jax rs,现在:
删除了java。lang.NoSuchMethodError:org。springframework。果心注释。注释AwareOrderComparator。排序(Ljava/util/List;)V
由此解决


共有3个答案

司马飞鸿
2023-03-14

Spring boot 2.0依赖于JPA 2.1,而Weblogic 12.1.3 vanilla安装依赖于JPA 1.0。

请注意,Weblogc 12.1.3有点特别,它分为两个java企业规范6和7。

>

在您的web应用程序中,确保您有哪些依赖项,并且它们不会与Weblogic classloader下已设置的依赖项重叠。

我在这里提到了步骤的完整描述:

http://javagoogleappspot.blogspot.com/2018/05/make-your-spring-boot-20-compatible.html

陈瀚
2023-03-14

我遇到了这个问题,Artyom的答案是正确的,但我会提供一个答案来提供更多细节。

我的问题是龙目山。1.6.20之后的任何版本(我相信)都增加了对Java9模块的支持。这将添加一个模块信息。类的根。jar文件。我通过删除模块信息确认了这是问题所在。类文件并重建我的战争。Appmerge能够在删除此文件的情况下成功运行。我不建议在生产中这样做,我只是为了确认问题。不确定为什么Appmerge不喜欢模块信息。类文件。

以下建议可帮助您解决此问题:

>

  • 识别有问题的依赖关系的一个简单html" target="_blank">方法是,取一个已知的工作的项目,然后从失败的项目中添加依赖关系,直到好的项目失败。

    为损坏的依赖项提取jar文件,并在根目录中查找module-info.class文件。如果有,这可能是问题所在。

    一个有用的命令,用于测试。war合并:java-cp c:\path_to_weblogic_server\wlserver\server\lib\weblogic。jar weblogic。appmerge-详细的目标/你的战争文件。战争。这将节省您尝试在控制台中部署的时间。

    至于除了恢复到旧版本之外,修复依赖关系的解决方案,我仍在努力找出答案。

    注意:在Lombok的案例中,我相信你应该将范围设置为provided,而在我的案例中我没有这样做。这个当提供范围时,不会包括jar,这样您就不会遇到这个问题。更多信息请参见此答案。

  • 阎伟志
    2023-03-14

    我们的团队开始使用Spring Boot 2.0.0,我们也遇到了这个问题。

    经过一些调查,我们发现AppMerge工具在部署之前会扫描所有类。

    • 在WebLogic 12.1.3的情况下。*由于多重发布JAR文件而失败。
    • AppMerge工具无法使用JDK 9文件。
    • 使用Log4j 2.8.2

    在pom.xml:

    <?xml version="1.0" encoding="UTF-8"?>
    <project>
       <parent>
          <groupId>org.springframework.boot</groupId>
          <artifactId>spring-boot-starter-parent</artifactId>
          <version>2.0.0.RELEASE</version>
          <relativePath/> <!-- lookup parent from repository -->
       </parent>
       ...
       <properties>
          ...
          <log4j2.version>2.8.2</log4j2.version>
          ...
       </properties>
       ...
    </project>
    
     类似资料:
    • 我目前正在开发一个云备份解决方案,其中涉及到多达8个在spring-boot中开发的微服务,并使用mongo DB atlas作为持久层。 微服务包括Netflix ZUUL API网关和Netflix Eureka作为服务发现机制。微服务被要求彼此进行明显的对话。 对微服务进行了对接。到目前为止,我已经使用docker-compose文件将它们部署到EC2实例中,该文件列出了使用docker网络

    • 完成干净的构建后,我将war文件复制到Tomcat的文件夹中。但是部署会发生两次,并且在上下文已经存在的情况下以异常结束。我错过了什么? 非常感谢您的帮助。

    • 有一个springboot项目想部署到阿里云上,需要简化部署流程,需要咨询几个问题: 1.生产上使用docker容器部署还是直接手动安装jdk,打jar包上传服务器? 2.使用宝塔部署安全可靠吗,是否可以简化部署,没使用过宝塔? 3.项目用到了MySQL和Redis,单独购买云数据库还是在运行springboot的服务器里自己安装MySQL和Redis服务? 4.项目是前后端分离的,是要单独再购买

    • 我试图将工件部署到nexus。当我尝试使用本地机器时,它工作正常。但是当我尝试在另一台机器中使用nexus时,它会抛出错误。 我已经配置了

    • 当我试图在heroku上部署springboot应用程序时,出现了以下错误: 无法执行目标org.apache.Maven.plugins:maven-compiler-plugin:3.8.1:在项目后端编译(default-compile):错误编译:无效的目标版本:11->[Help 1]Remote:[error]Remote:[error]要查看错误的全部堆栈跟踪,请使用-e开关重新运行

    • 本文向大家介绍详解springboot热启动与热部署,包括了详解springboot热启动与热部署的使用技巧和注意事项,需要的朋友参考一下 一、热启动: 每自修改后, 程序自动启动spring Application上下文。 Pom中直接添加依赖即可: 这里需要注意的是每次类文件更改后需要重新编译方可触发服务重新启动 二、热交换或热部署 这个使用springloaded插件。 1.添加依赖: 如果

    • 本文向大家介绍springboot实现热部署操作方法,包括了springboot实现热部署操作方法的使用技巧和注意事项,需要的朋友参考一下 1.在 Spring Boot 开发环境下禁用模板缓存 2.引入依赖 3.Intellij IEDA 和 Eclipse 不同,Intellij IDEA 必须做一些小调整 在 Eclipse 中,修改文件后要手动进行保存,它就会自动编译,就触发热部署现象,而