Spring应用程序中的区分大小写问题

我已经给了一个Java Spring应用程序来进行容器化。 我正在使用Tomcat8 / Java8基本映像。 在启动时,无法部署,出现以下错误:

Caused by: org.springframework.context.annotation.ConflictingBeanDefinitionException: Annotation-specified bean name 'controller3P' for bean class [com.******.******.brand3P.controller.Controller3P] conflicts with existing, non-compatible bean definition of same name and class [com.******.******.Brand3P.controller.Controller3P] 

这里的问题似乎在于spring发现了两个相互冲突的类,由“品牌3P”和“品牌3P”来区分。

但是,在源代码中,我找不到一个“Brand3P”类,只有一个类“brand3P”。

任何人都可以解释一下Spring在做什么吗?

(好,我是OPS,不是Dev)

  1. 软件包名称应该全部放在低位,在这里检查oracle文档

  2. 软件包名称不包含在弹簧定义名称中。

  3. 我的猜测是有人在Git中更改了包名,因为git默认情况下不区分大小写,所以你会遇到这种情况,如果是这种情况,删除文件并重新创build它将解决这个问题。

  4. Hi Ops,请与Devs一起工作;)

原来Jenkins的构build是一个问题。 代码已经改变(品牌3P – > brand3P),但老的类名挂在Jenkins的工作区,并被捆绑到Docker镜像中。

我们删除了工作区,重新运行了构build,一切正常。