天天看點

【瑩夥叢】(前方多圖!介意繞行!)如何搭建 CAS overlay 項目的 IDEA 開發環境 ?如何搭建 CAS overlay 項目的 IDEA 開發環境 ?

如何搭建 CAS overlay 項目的 IDEA 開發環境 ?

部署CAS 伺服器的方式有很多。CAS 官方推薦使用 CAS overlay 打包

cas.war

來部署 CAS 服務端。

作為碼農,上戰場怎麼能不帶刀槍?!今天咱們就來說說使用 IDEA 該怎麼搭建 CAS overlay 開發環境。

  1. 首先找到 Github 上 CAS overlay 的官方源碼,這裡我選擇使用 SSH 協定的 URL :

    [email protected]:apereo/cas-overlay-template.git

  2. 啟動 IDEA 。之後從入口

    File ---> New Project from Version Control ...

    進入。
    【瑩夥叢】(前方多圖!介意繞行!)如何搭建 CAS overlay 項目的 IDEA 開發環境 ?如何搭建 CAS overlay 項目的 IDEA 開發環境 ?
  3. 這裡我使用倉庫位址下載下傳代碼。
    【瑩夥叢】(前方多圖!介意繞行!)如何搭建 CAS overlay 項目的 IDEA 開發環境 ?如何搭建 CAS overlay 項目的 IDEA 開發環境 ?
  4. 點選“Clone” 之後,開始自動下載下傳源代碼。源碼下載下傳完成之後,會提示你選擇目前視窗打開,還是新視窗打開。(與設定有關,可能你直接自動打開了。)首次打開需要花點時間,因為會自動build,并需要下載下傳各種依賴包。從源代碼看出,使用的gradle來管理項目。為了依賴包的快速下載下傳,我們可以配置 gradle初始化腳本,在其中設定倉庫走阿裡雲代理,詳見手把手教你:Gradle 安裝及配置 。如果隻是單個項目使用,也可以在項目中配置。另外,Gradle 最好使用源碼中自帶的相容版本,使用其他自己安裝的版本可能會存在build 失敗的風險。
  5. CAS 目前的最新版本是

    6.2.0-SNAPSHOT

    ,最新穩定版本是

    6.1.6

    。我們切換分支到

    6.1

    。打開項目根目錄下的

    gradle.properties

    檔案:
    # Versions
    	cas.version=6.1.6
    	springBootVersion=2.2.0.RELEASE
    	
    	# Use -jetty, -undertow to other containers
    	# Or blank if you want to deploy to an external container
    	appServer=-tomcat
    	executable=false
    	
    	gradleVersion=5.6.3
    	tomcatVersion=9.0.34
    	
    	group=org.apereo.cas
    	sourceCompatibility=11
    	targetCompatibility=11
    	......
               
    我們看到,目前的

    cas

    版本是

    6.1.6

    。需要

    JDK

    版本是

    11

    tomcat

    版本

    9.0.34

    ,gradle 版本

    5.6.3

    。相應工具版本最好一緻,否則可能會出錯。
  6. 添加一個 Tomcat server 配置。
    【瑩夥叢】(前方多圖!介意繞行!)如何搭建 CAS overlay 項目的 IDEA 開發環境 ?如何搭建 CAS overlay 項目的 IDEA 開發環境 ?
    【瑩夥叢】(前方多圖!介意繞行!)如何搭建 CAS overlay 項目的 IDEA 開發環境 ?如何搭建 CAS overlay 項目的 IDEA 開發環境 ?
    【瑩夥叢】(前方多圖!介意繞行!)如何搭建 CAS overlay 項目的 IDEA 開發環境 ?如何搭建 CAS overlay 項目的 IDEA 開發環境 ?
    【瑩夥叢】(前方多圖!介意繞行!)如何搭建 CAS overlay 項目的 IDEA 開發環境 ?如何搭建 CAS overlay 項目的 IDEA 開發環境 ?
    【瑩夥叢】(前方多圖!介意繞行!)如何搭建 CAS overlay 項目的 IDEA 開發環境 ?如何搭建 CAS overlay 項目的 IDEA 開發環境 ?
  7. 啟動服務。
    【瑩夥叢】(前方多圖!介意繞行!)如何搭建 CAS overlay 項目的 IDEA 開發環境 ?如何搭建 CAS overlay 項目的 IDEA 開發環境 ?
    發現Tomcat 起來了,但是CAS 服務沒起來。檢視日志:cas.war 找不到!!!我們去IDEA 裡的相應目錄去看,果然沒有。
  8. 檢視源碼中的

    README.md

    ,發現如下指令用來建構:
    # Use --refresh-dependencies to force-update SNAPSHOT versions
    ./gradlew[.bat] clean build
               
  9. 我們檢視了 Tomcat server 的配置中,其實是有

    Build

    前置任務的,但是預設的建構任務不能輸出我們想要的

    cas.war

    。我們在終端手動執行指令:

    ./gradlew clean build

    。指令順利執行完成,并且輸出了想要的 war 包。
    【瑩夥叢】(前方多圖!介意繞行!)如何搭建 CAS overlay 項目的 IDEA 開發環境 ?如何搭建 CAS overlay 項目的 IDEA 開發環境 ?
  10. 但是,每次都要手動建構war包,還是嫌麻煩,(本來我們就為了偷懶,沒有選擇直接把war包拷貝到 Tomcat 的 webapps 目錄來運作的方式。)沒關系,前方高能!!!
  11. 既然預設的建構任務沒法達成目的,必須要使用官方提供的方式建構war包,那我們就加一個前置任務,(當然,無用的前置任務可以删掉了。)
    【瑩夥叢】(前方多圖!介意繞行!)如何搭建 CAS overlay 項目的 IDEA 開發環境 ?如何搭建 CAS overlay 項目的 IDEA 開發環境 ?
  12. 儲存後,可以把之前生成的檔案,特别是 cas.war 删除,以驗證我們的配置是否生效。現在,隻需我們點以下

    Tomcat server

    Run

    按鈕,就可以完美運作了!!!
    【瑩夥叢】(前方多圖!介意繞行!)如何搭建 CAS overlay 項目的 IDEA 開發環境 ?如何搭建 CAS overlay 項目的 IDEA 開發環境 ?

【此處應有掌聲!!!】