JAVA-下载并运行Spring源码,超细节,包成功!

简介: JAVA-下载并运行Spring源码,超细节,包成功!

我们看spring源码有两种方式。一,可以在项目中引入spring依赖,进行静态调试。二是下载源码进行调试。博主认为将源码下载下来,写自己的注释快乐滴研究spring的奥秘是一个很棒的主意。

目录

使用工具:

源码下载地址:

流程

选择版本,下载ZIP压缩包

执行命令
解决报错

导入IDEA

更改setting

更改gradle setting

如果本篇博客对您有一定的帮助,大家记得留言+点赞+收藏哦。

使用工具:

IDEA,Gradle

源码下载地址:

spring-framework:

流程

博主使用的版本是spring-framework-5.2.6.RELEASE版本

GitHub - spring-projects/spring-framework: Spring Framework

选择版本,下载ZIP压缩包下载好了之后,我们去下载一下gradle。

为什么要下载使用gradle呢?

Gradle是一个构建工具,如果你学习过maven可以很好的理解,它是用来帮助我们构建app的,构建包括编译、打包等过程。

切换到我们下载好的 spring源码路径下。输入cmd打开命令行窗口

执行命令

gradlew :spring-oxm:compile TestJava,它会开始下载gradle-5.6.4-bin.zip。默认是下载到 C盘用户目录的.gradle下的wrapper里。

C:\Users\aqiu\.gradle\wrapper\dists\gradle-5.6.4-bin\3ha3t4kg1h5a1pycc6apqiwns

解决报错

我们看到上面有一个报错。原因是连不上https://plugins.gradle.org,下载一些依赖的插件失败

解决方案已经放在了另外一篇博客里:JAVA-下载gradlew:报错:Build failed with an exception
解决完后,再次执行命令,将我们的源码build成功后,打开源码路径下的gradle\warpper\gradle-wrapper.properties,


XXX\spring-framework-5.2.6.RELEASE\spring-framework-5.2.6.RELEASE\gradle\wrapper

将路径指为我们的 gradle-5.6.4-bin路径;

最好将我们的源码包给git仓库化,因为build时会报一个小错,博主不知道如果不解决这个错误会不会对代码运行造成影响。

git仓库化步骤:

导入IDEA

没有下载IDEA的朋友可以看博主的博客:双击build.gradle。点击Open as Project。

它的作用和Maven中的pom文件类似。

第一次打开会有些慢,需要等待一会儿。

console里显示build  successful

更改setting

默认是GBK,我们更改字符格式为utf-8

更改gradle setting



将启动环境设置为Gradle以及配置路径和JVM版本
之后我们可以新建的模块和源码中的模块都可以使用Gradle方式运行啦

如果本篇博客对您有一定的帮助,大家记得留言+点赞+收藏哦。

相关文章
|
4天前
|
监控 Java 应用服务中间件
高级java面试---spring.factories文件的解析源码API机制
【11月更文挑战第20天】Spring Boot是一个用于快速构建基于Spring框架的应用程序的开源框架。它通过自动配置、起步依赖和内嵌服务器等特性,极大地简化了Spring应用的开发和部署过程。本文将深入探讨Spring Boot的背景历史、业务场景、功能点以及底层原理,并通过Java代码手写模拟Spring Boot的启动过程,特别是spring.factories文件的解析源码API机制。
16 2
|
16天前
|
人工智能 前端开发 Java
基于开源框架Spring AI Alibaba快速构建Java应用
本文旨在帮助开发者快速掌握并应用 Spring AI Alibaba,提升基于 Java 的大模型应用开发效率和安全性。
基于开源框架Spring AI Alibaba快速构建Java应用
|
18天前
|
存储 Java API
Java实现导出多个excel表打包到zip文件中,供客户端另存为窗口下载
Java实现导出多个excel表打包到zip文件中,供客户端另存为窗口下载
25 4
|
24天前
|
Java 数据库连接 开发者
Spring 框架:Java 开发者的春天
【10月更文挑战第27天】Spring 框架由 Rod Johnson 在 2002 年创建,旨在解决 Java 企业级开发中的复杂性问题。它通过控制反转(IOC)和面向切面的编程(AOP)等核心机制,提供了轻量级的容器和丰富的功能,支持 Web 开发、数据访问等领域,显著提高了开发效率和应用的可维护性。Spring 拥有强大的社区支持和丰富的生态系统,是 Java 开发不可或缺的工具。
|
23天前
|
Web App开发 Java
使用java操作浏览器的工具selenium-java和webdriver下载地址
【10月更文挑战第12天】Selenium-java依赖包用于自动化Web测试,版本为3.141.59。ChromeDriver和EdgeDriver分别用于控制Chrome和Edge浏览器,需确保版本与浏览器匹配。示例代码展示了如何使用Selenium-java模拟登录CSDN,包括设置驱动路径、添加Cookies和获取页面源码。
|
24天前
|
JSON Java Maven
实现Java Spring Boot FCM推送教程
本指南介绍了如何在Spring Boot项目中集成Firebase云消息服务(FCM),包括创建项目、添加依赖、配置服务账户密钥、编写推送服务类以及发送消息等步骤,帮助开发者快速实现推送通知功能。
61 2
|
10天前
|
安全 Java 测试技术
Java开发必读,谈谈对Spring IOC与AOP的理解
Spring的IOC和AOP机制通过依赖注入和横切关注点的分离,大大提高了代码的模块化和可维护性。IOC使得对象的创建和管理变得灵活可控,降低了对象之间的耦合度;AOP则通过动态代理机制实现了横切关注点的集中管理,减少了重复代码。理解和掌握这两个核心概念,是高效使用Spring框架的关键。希望本文对你深入理解Spring的IOC和AOP有所帮助。
23 0
|
2月前
|
SQL 监控 druid
springboot-druid数据源的配置方式及配置后台监控-自定义和导入stater(推荐-简单方便使用)两种方式配置druid数据源
这篇文章介绍了如何在Spring Boot项目中配置和监控Druid数据源,包括自定义配置和使用Spring Boot Starter两种方法。
|
1月前
|
人工智能 自然语言处理 前端开发
SpringBoot + 通义千问 + 自定义React组件:支持EventStream数据解析的技术实践
【10月更文挑战第7天】在现代Web开发中,集成多种技术栈以实现复杂的功能需求已成为常态。本文将详细介绍如何使用SpringBoot作为后端框架,结合阿里巴巴的通义千问(一个强大的自然语言处理服务),并通过自定义React组件来支持服务器发送事件(SSE, Server-Sent Events)的EventStream数据解析。这一组合不仅能够实现高效的实时通信,还能利用AI技术提升用户体验。
163 2