Java Spring Hibernate应用程序在本地运行,但不在aws的ecs docker中运行

亲爱的Java和Docker大师们,

你有遇到拔出头发的问题吗? 尝试这个:

我有一个Java的Spring Hibernate的Web应用程序,可以在我的本地通过Gradle构build成功运行。 IT使用Oracle JDK 1.8.0_101进行编译。 它在Tomcat 7.0.72下运行(而Tomcat在JDK 1.8.0_102上运行Open)。 它完美地运行着这场战争。 为什么我有这样不同的jdk版本? 因为我想模仿下面的开发服务器。

我的Dev服务器是aws ecs下的docker,只有一个容器映像。 而这个容器的图片使用了tomcat:7.0.72-jre8的图片库。 在容器中运行相同的应用程序将引发以下错误:

创build名称为“agencyRepository”的bean时出错:init方法的调用失败; 嵌套exception是java.lang.IllegalArgumentException:不是托pipetypes:class com.mnetmobile.data.entities.Agency

我拖动那个战争文件,并运行在我的本地,它像一个冠军。 所有的JDK版本都是一样的,tomcat版本是一样的。 唯一不同的是,一个Windows 7笔记本电脑,与Ubuntu的Linux和运行docker。 (所有不同的path都是N / A,因为都有相对path)

任何想法,我可能错过了哪个洞?

不知何故,两台Tomcat服务器的configuration必定有所不同。 由于Java版本,Tomcat版本和war文件都是一样的, 在Tomcatconfiguration中必须有一些区别,无论是在Tomcat的lib文件夹,还是在context.xml或server.xml或其他地方。