Rest SpringBoot:控制器扩展了另一个控制器,但未检测到

Rest SpringBoot:控制器扩展了另一个控制器,但未检测到,rest,spring-boot,controller,Rest,Spring Boot,Controller,正如标题所说,该控制器是从另一个控制器继承的,具有一些其他控制器可以使用的共同特性。但是,应用程序无法检测到该控制器,并给出了404路由错误,而Swagger UI没有显示该错误 这是一个maven项目我在另一台pc上创建并用git克隆。当我在那台电脑上运行它时,它没有问题。在这台电脑上,我尝试删除继承的类,它成功了,但我不会这样离开它,因为继承的控制器具有类似DTO的ModelMapper和其他控制器可以使用的@RestController 配置文件控制器未显示在配置文件包中: package

正如标题所说,该控制器是从另一个控制器继承的,具有一些其他控制器可以使用的共同特性。但是,应用程序无法检测到该控制器,并给出了404路由错误,而Swagger UI没有显示该错误

这是一个maven项目我在另一台pc上创建并用git克隆。当我在那台电脑上运行它时,它没有问题。在这台电脑上,我尝试删除继承的类,它成功了,但我不会这样离开它,因为继承的控制器具有类似DTO的
ModelMapper
和其他控制器可以使用的
@RestController

配置文件控制器未显示在配置文件包中:

package com.hanabinoir.portfolio.profile;

public class ProfileController extends BaseController {

    //...
}
package com.hanabinoir.portfolio.infrastructure;

@RestController
@CrossOrigin
public class BaseController {

    protected ModelMapper modelMapper = new ModelMapper();
}
基础架构包中继承的BaseController

package com.hanabinoir.portfolio.profile;

public class ProfileController extends BaseController {

    //...
}
package com.hanabinoir.portfolio.infrastructure;

@RestController
@CrossOrigin
public class BaseController {

    protected ModelMapper modelMapper = new ModelMapper();
}

我需要ProfileController在继承BaseController的功能时正确显示。请给我一些建议,如果我有任何问题的项目结构。谢谢。

@RestController

因此,您的
ProfileController
没有附加注释

您可能需要定义一些自定义注释并根据需要使用它

@Inherited
@RestController
public @interface InheritedRestController{
}

@InheritedRestController
public class BaseController {

}

有一个带有特定策略的
@heritation
注释,但实际上并不是这样使用的。今天我启动电脑后,这个项目就正常了,我想它以前是不干净的。