背景
一直以来习惯用docker配置一些本地学习环境,许多教程配置activiti的方式都是通过复制activiti的war包部署在tomcat中,我尝试了一下通过docker的方式遇到了一些不易察觉的错误。文章来源:https://www.toymoban.com/news/detail-574416.html
使用方式描述
- 使用docker安装tomcat9.0
docker run -d -p 8080:8080 --name tomcat tomcat:9.0
- 复制activiti的war包
- 浏览器访问404
分析
- 使用docker desktop view detail(根据tomcat的版本不同也会有其它的类的ClassNotFoundException)
Caused by: java.lang.ClassNotFoundException: javax.xml.bind.JAXBException
at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1412)
at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1220)
... 186 more
- 进一步查看tomcat的log日志初步猜测是jdk版本问题。
- 查看tomcat容器环境变量
- 查看官网文档得知需要jdk1.7+,也许jdk17过高,切换成jdk8也许可以。
- 使用jdk8的tomcat,直接使用tomcat7.0的镜像。
结果
文章来源地址https://www.toymoban.com/news/detail-574416.html
到了这里,关于使用docker安装的tomcat部署activiti-app.war、activiti-admin.war失败(ClassNotFoundException)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!