zoukankan      html  css  js  c++  java
  • Spring5.1源码编译详解

    关于编译源码,作者有以下几点感悟:

    1、第一次编译是一件很痛苦的事情,会有很多报错,而且每个人遇到的都不一样,所以耐心是关键

    2、环境最好和笔者保持一致,不然可能出现以下莫名的错误

    3、多看看报错内容,根据报错重新编译对应的包,或者修改环境配置等杂七杂八的东西

    4、尽量不要用eclipse编译源码,主要是eclipse需要安装一堆插件,漫长的安装插件是一件极其痛苦的事情

    编译环境:

    IDEA 2019.2.4            jdk11.7            gradle5.6.3

    环境安装搭建略过

    1、下载spring源码包:https://github.com/spring-projects/spring-framework/tree/5.1.x

    自己选择下载,可以使用git 或者 zip方式下载

    gradlew.bat :spring-oxm:compileTestJava

    gradlew.bat :spring-core:compileTestJava

    打开idea配置相关环境

     选择一个以前项目目录打开

     

     选择gradle项目 finish,修改file>project structure 看看版本是否一致

    然后开始漫长的等待吧,等待编译完成,build success 之后 需要编译 2个jar包

     

     运行完成之后,可以编写自己的测试类了

     

     编写自己的测试类,我的测试类如下

    package com.hao;
    
    import org.springframework.context.annotation.ComponentScan;
    import org.springframework.stereotype.Component;
    
    @Component
    @ComponentScan("com.hao")
    public class AppConfig {
    }
    package com.hao;
    
    import org.springframework.stereotype.Service;
    
    @Service
    public class AppService {
    }
    package com.hao;
    
    import org.springframework.context.annotation.AnnotationConfigApplicationContext;
    
    public class AppTest {
        public static void main(String[] args) {
            AnnotationConfigApplicationContext context = new AnnotationConfigApplicationContext(AppConfig.class);
            System.out.println(context.getBean(AppService.class));
        }
    }

    关于gradle依赖加入spring-context即可

     执行 结果如下:

    至此源码编译完成

  • 相关阅读:
    二叉树的建立和遍历
    canvas基础入门(一)canvas的width、height于css样式中的宽高区别
    js实现放大镜效果
    ios中页面底部输入框,position:fixed元素的问题
    js input复选框选中父级同时子级也选中
    js apply和call
    javascript闭包理解
    vue.js vue-jsonp解决跨域问题
    vue.js请求数据(axios)
    vuex
  • 原文地址:https://www.cnblogs.com/zhanh247/p/12786146.html
Copyright © 2011-2022 走看看