編譯CAS 5.3.17源碼

版本信息

CAS 5.3.17-SNAPSHOT

gradle 4.8

node 8.11.2

1、到github下載cas的源碼

cas 項目地址?

https://github.com/apereo/cas

克隆后,checkout出5.3.x的分支

2、安裝和配置gradle

下載gradle complete 4.8軟件包

https://gradle.org/releases/?

將軟件包解壓到D:\Program Files\gradle-4.8,配置環境變量

GRADLE_HOME = D:\Program Files\gradle-4.8

GRADLE_USER_HOME = D:\gradle\.gradle? (緩存的依賴存放的目錄)

path=%GRADLE_HOME%\bin\

3、修改gradle依賴包的下載地址為阿里云的倉庫地址(避免被墻,如果已設置代理可以跳過此步)

maven{ url"https://maven.aliyun.com/nexus/content/groups/public/" }

maven{ url'http://maven.aliyun.com/nexus/content/repositories/jcenter'}

總共有3處,這里只截第一處

gradle依賴配置文件

4、指定編譯的cas版本

指定編譯的cas版本

5、設置gradle本地依賴倉庫路徑

IDEA gradle配置
war包編譯成功后位置位置

6、編譯報錯及解決措施

1)Error:Connection timed out: connect. If you are behind an HTTP proxy, please configure the proxy settings either in IDE or Gradle.

項目編譯需要的gradle版本


gradle版本

一般配置了第3步后,會自動下載。如果下載失敗,可以到如下地址,下載對應版本,放到對應目錄。

http://services.gradle.org/distributions/


2)Execution failed for task ':api:cas-server-core-api-configuration-model:generateConfigurationMetadata'.

> Process 'command 'D:\Program Files\jdk1.8.0_211\bin\java.exe'' finished with non-zero exit value 1


開發環境中的node的版本和cas 5.3.x的node版本不一致

開發環境中的node的版本v12.14.1

cas 5.3.x的node版本8.11.2

Windows上node.js的多版本管理工具gnvm

百度網盤地址:https://pan.baidu.com/s/1gdmVgen?errmsg=Auth+Login+Sucess&errno=0&ssnerror=0&#list/path=%2F%E6%88%91%E7%9A%84%E5%85%B1%E4%BA%AB%2Fgnvm&parentPath=%2F

不存在 Node.js 環境(未安裝node):下載并解壓縮gnvm.exe保存到任意文件夾,并將此文件夾加入到環境變量Path。(環境變量配置參考安裝node)

存在 Node.js 環境 (已安裝node):下載并解壓縮gnvm.exe保存到Node.js所在的文件夾。(我就直接找到我的node安裝目錄下,把剛剛下載好的gnvm粘貼過去)

為設置gnvm的倉庫為淘寶鏡像倉庫(解決被墻問題)

gnvm config registry http://npm.taobao.org/mirrors/node

安裝nodejs 8.11.2版本

gnvm install 8.11.2

切換nodejs為8.11.2

gnvm use 8.11.2

查詢當前版本

gnvm node-version


3)npm安裝node-sass失敗

npm設置淘寶鏡像

npm config set registry https://registry.npm.taobao.org

npm config set sass_binary_site=https://npm.taobao.org/mirrors/node-sass

安裝python,下面是python27的下載地址

https://www.python.org/download/releases/2.7/

設置sass的地址后,依然下載node-sass失敗,經查看為淘寶鏡像倉庫沒有該版本的node-sass

于是修改了一下CAS的node-pass的版本


4)Expected linebreaks to be 'LF' but found 'CRLF'

解決問題的博客:http://www.jsphp.net/webpack/show-26-352-1.html

選擇方案1,在.eslintrc文件 rules 里面 配置

//允許windows開發環境

"linebreak-style": [0 ,"error", "windows"],

5)在阿里云上沒有的jar包,又下載比較慢的,可以通過mvn install的命令直接把jar包安裝到本地倉庫里

mvn install:install-file -Dfile=jar包的位置?-DgroupId=groupId?-DartifactId=artifactId?-Dversion=version?-Dpackaging=jar

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容