前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >springboot gradle 使用过程中遇到的问题小结(1)

springboot gradle 使用过程中遇到的问题小结(1)

作者头像
发布2019-07-11 14:01:34
1.7K0
发布2019-07-11 14:01:34
举报
文章被收录于专栏:WD学习记录

其中遇到的问题如下:

1. 最外层的setting.gradle中include所有模块之后,需要将右侧gradle窗口中多余的根删除掉,不然会有报错导致项目无法运行

2. 多个平级模块之间相互引用,旁边的小伙伴不需要,但是我这里需要现在对应子模块中加上

代码语言:javascript
复制
includeFlat 'projectName'

然后在build.gradle中加上

代码语言:javascript
复制
compile project (':projectName')

才可以成功引用

3. 启动Application类的时候出现了找不到或无法加载的主类 类似的错误提示,没有其他错误信息,错误信息需要在下方的build窗口查看,可能是其中一个模块构建失败导致的,需要一一找出原因并解决。

4. 启动Application在一个模块中,需要扫描的在其他模块中,需要在@SpringbootApplication注解中加上扫描的包名,同时需要在setting.gradle和build.gradle中引用这些包,否则还是扫描不到。

SpringBoot默认包扫描机制是:从启动类所在包开始,扫描当前包及其子包下的所有文件。

5. 构建都成功,且都引用了其他平级模块,但是仍然无法注入对应的component,这时可能需要考虑在被引用的模块的build.gradle加上:

代码语言:javascript
复制
jar.enabled=true

6. 在构建拦截器过程中需要注入其他的组件,但是注入失败,调试发现是null,可以参考:

https://www.cnblogs.com/niceboat/p/6958895.html

代码语言:javascript
复制
// 代码来自于 https://www.cnblogs.com/niceboat/p/6958895.html
@Configuration
public class WebAppConfig extends WebMvcConfigurerAdapter {
  
  @Bean
  public UserInterceptor userInterceptor() {
    return new UserInterceptor();
  }
  
  @Override
  public void addInterceptors(final InterceptorRegistry registry) {
    registry.addInterceptor(userInterceptor())
        .addPathPatterns("/**")
        .excludePathPatterns("/login/**", "/logout/**", "/loginPage/**", "/error/**");
    super.addInterceptors(registry);
  }
}

需要注意的是,除了上方@Bean的位置,还需要改掉下面的addInterceptor中的,不然还会继续报错,开始因为忘记修改这里又浪费了一些时间。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019年07月10日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档