栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Spring5.2.x+IDEA2019源码环境搭建

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Spring5.2.x+IDEA2019源码环境搭建

本文基于IDEA19,jdk1.8,GradleWapper,来编译的spring5源码

1、首先去github下载源码GitHub - spring-projects/spring-framework: Spring frameworkhttps://github.com/spring-projects/spring-framework本次下载的5.2.x版本的。推荐大家使用git clone来进行下载,不要使用zip包来进行编译。

 可以避免后续编译过程之中一个git的报错。

org gradle.process.internal.ExecException:Process 'command' git '' finished with non-zero exit value 128 

2、编译前的准备工作,进到源码的根目录。 

   (1)打开build.gradle文件,找到 repositories 标签,修改仓库地址为阿里云的地址,这样编译起来会快很多。

加上如下这2行:

 maven{ url 'https://maven.aliyun.com/nexus/content/groups/public/'}
 maven{ url 'https://maven.aliyun.com/nexus/content/repositories/jcenter'}

如下代码片段所示:

repositories {
            maven{ url 'https://maven.aliyun.com/nexus/content/groups/public/'}
            maven{ url 'https://maven.aliyun.com/nexus/content/repositories/jcenter'}
			mavenCentral()
			maven { url "https://repo.spring.io/libs-spring-framework-build" }
		}

 (2)打开 settings.gradle 文件,找到 pluginManagement 标签,也加上阿里云仓库地址。

加上这行: maven { url 'https://maven.aliyun.com/repository/gradle-plugin' }

如下代码片段所示:

pluginManagement {
	repositories {
		gradlePluginPortal()
        maven { url 'https://maven.aliyun.com/repository/gradle-plugin' }
		maven { url 'https://repo.spring.io/plugins-release' }
	}
}

3、预编译源码。打开spring源码的路径,cmd命令输入

gradlew :spring-oxm:compileTestJava

这一步大概需要5到10分钟吧,视网速的快慢而定。首次编译要先远程下载对应版本的gradle,也会相应的慢点。

出现 BUILD SUCCESSFUL in **s  就表示编译成功。

编译过程常见问题:

    1、如下插件的权限失败问题:

Error resolving plugin [id: 'io.spring.gradle-enterprise-conventions', version: '0.0.2']

 Received status code 401 from server: Unauthorized

原因是 build.gradle 文件之中存在 该插件,阿里云之中没有该版本插件导致的。

 解决办法一:直接注释掉该插件

解决办法二:打开阿里云仓库仓库服务,搜索该插件  

 发现该插件版本是 0.04,所以修改该行版本为 0.04 也可以,如下图所示

4、导入到IEDA之中。File -> open -> 找到源码的根目录,打开即可。

注意:打开以后,ctrl+alt+s,找到如下图所示的gradle配置,确保 Use Gradle from这个选项,选择的是 'gradle-wapper.properties'file这个选项,这样的话,就会使用远程的gradle版本,自己本地的gradle就不会产生异常影响。

然后等待IDEA编译完成即可。

编译完成以后。项目的目录下都有蓝色的小方块,表示编译完成。如下图所示:

 5、新建一个模块进行自测。

在项目的目录,右击,New -> Module

然后选择 gradle

 

点击 Next,设置好对应的Name 即可。也就是ArtifactId

然后,打开刚才新建的项目,打开build.gradle文件,加上如下一行,下图所示位置

compile(project(":spring-context"))

在 src 目录下新建一个package : com.duan.conf

然后新建一个测试bean:Person.java如下所示,使用 @Component 注解修饰。

@Component
public class Person {
	private String name;
	private int age;

	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}

	public int getAge() {
		return age;
	}

	public void setAge(int age) {
		this.age = age;
	}

	@Override
	public String toString() {
		return "Person{" +
				"name='" + name + ''' +
				", age=" + age +
				'}';
	}
}

然后新建一个测试类  MyConfig.java

@Configuration
@ComponentScan(basePackages = {"com.duan.conf"})
public class MyConfig {
	public static void main(String[] args) {
		ApplicationContext context = new AnnotationConfigApplicationContext(MyConfig.class);
		Person person = context.getBean(Person.class);
		person.setName("duanNFF");
		person.setAge(666);
		System.out.println(person);

	}
}

最后运行main方法,可以看到如下结果,则spring源码环境就大功告成了。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/696985.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号