CAS 5.3.x SSO单点登录项目源码Gradle导入IDEA
apereo的CAS SSO项目cas-server包含几百个module,如果设置不当则极有可能build失败。
官方5.x版本Build向导:https://apereo.github.io/cas/developer/Build-Process-5X.html
需要注意的是,5.x版本均使用gradle进行构建。
1.准备环境
JDK 1.8 (CAS 6.x 需要JDK11)
Gradle 4.10.1(项目配置中为4.8)
IDEA 2018.1
2.源码下载
打开项目github地址:https://github.com/apereo/cas/tree/5.3.x
切换分支Branch至5.3.x,直接Dowdload Zip,然后将下载的zip项目解压
当然也可以使用git进行clone
3.环境配置
3.1 IDEA配置
打开IDEA安装目录,修改对应配置文件 idea64.exe.vmoptions(32位则idea.exe.vmoptions)
1 | -Xms1024m |
以上是自己在build时使用的IDEA配置,当然也可参考官方给的配置:
1 | -server |
配置主要是加大堆内存大小、缓存空间大小及非堆区内存大小。如果不做以上配置,会导致内存直接内存溢出卡死,无法正常build。另外如果自身机器内存不是很大,**-Xmx4096m** 也是够用的。
3.2 Gradle配置
加大Gradle堆内存大小,开启多线程并行。
3.3 Complier设置
按照官方指引进行以下配置:
配置加大了build进程的堆大小,并行编译独立的module。
3.4 Gradle配置文件
打开项目根目录下的build.gradle文件,找到以下代码部分
1 | git = org.ajoberstar.grgit.Grgit.open(dir: file('.').canonicalPath) |
这里是从git目录获取当前版本号,但是由于各种原因这里经常拿不到而不能继续Build。
这里直接将其注释,指定版本号:
1 | // git = org.ajoberstar.grgit.Grgit.open(dir: file('.').canonicalPath) |
如果没有梯子,在build.gradle中配置aliyun仓库
1 | maven { url "http://maven.aliyun.com/nexus/content/groups/public/"} |
3.5 Lombok插件安装
CAS项目使用了大量Lombok注解,相信大多数开发者都使用了Lombok,这里不进行过多描述。
4.项目导入
导入项目,然后进入漫长的等待吧… 自己build了大概二三十分钟