如何優雅地本地化構建Mybatis源碼

一.環境準備

不耽誤各位想提升技術的熱血沸騰的心情,不想囉嗦半天雞湯廢話,直接進入正題。
要想構建源碼,大家都知道第一步幹什麼?github走起。

  1. 下載mybatis源碼https://github.com/mybatis/mybatis-3
  2. 下載mybatis依賴項目parenthttps://github.com/mybatis/parent

二. 源碼構建

  • 上面環境準備,大家會存在一個疑問,構建Mybatis源碼爲什麼要下載parent項目呢?
    答疑:clone下來mybatis源碼後,可以嘗試一下使用mvn clear install構建一下項目,毫無疑問肯定會報錯。因爲它依賴parent項目。
    打開mybatis項目中的pom.xml文件驗證:
 <parent>
    <groupId>org.mybatis</groupId>
    <artifactId>mybatis-parent</artifactId>
    <version>32-SNAPSHOT</version>
  </parent>

可以清晰看出它依賴父項目,可以得到解決大家心中的疑惑。

2.1 parent

parent項目clone下來之後,大家可能會想構建項目mvn clear install,小編構建源碼之前也搜過好多博文,皆言parent項目能夠構建成功。小編也證實了的確能夠構建成功。小編也經歷構建失敗,由於自己辦公電腦環境配置問題,導致parent項目一直構建失敗,但是並沒有影響小編。下面舉例說明一下小編構建失敗的案例。如果大家構建成功,則忽略以下幾句廢話。
構建失敗案例:小編構建時,總是報錯 Plugin org.apache.maven.wagon:wagon-ssh:3.4.0 or one of its dependencies could not be resolved;小編通過maven下載改jar包後,也是編譯沒有通過。於是乎,小編放棄了構建parent項目,放手大膽嘗試,在mybatis源碼中加入parent依賴路徑,嘗試一下構建,驚喜可能會遲到但不會不到,居然成功啦。後面會給大家細說如何依賴。這裏先提一下,大家如何parent項目一直構建失敗,可以放棄一下,大膽嘗試一下。
貼一下小編構建parent項目構建失敗圖,希望大家避免浪費時間採坑,如果有解決的大佬留言共享。大家可以忽略,進入正題。
在這裏插入圖片描述
成功案例:
小編將跟蹤源碼的點滴注釋會提交個人倉庫,所以下班回家自己用自己的電腦構建了一下parent項目,確實成功了。
命令:mvn install
項目版本號32-SNAPSHOT,安裝路徑。
在這裏插入圖片描述

2.2mybatis源碼

  • parent依賴
    上面我們已經提到好幾次要依賴parent項目。所以要在pom.xml中加入parent項目依賴;
<parent>
    <groupId>org.mybatis</groupId>
    <artifactId>mybatis-parent</artifactId>
    <version>32-SNAPSHOT</version>
    <relativePath>../parent/pom.xml</relativePath>
  </parent>

注意點

  • parent版本號32-SNAPSHOT要與自己下載的保持一致;github大家可以勾選自己所需要的版本;
    在這裏插入圖片描述直接下載master分支也是可以的,小編第一次構建源碼時,經驗略淺選擇的就是master分支,但是構建也是成功的。
  • 加入relativePath標籤的內容
    …/parent/pom.xml這裏是相對路徑哦。貼一下小編的存儲路徑;
    在這裏插入圖片描述
  • mysql驅動依賴
	<dependency>
      <groupId>mysql</groupId>
      <artifactId>mysql-connector-java</artifactId>
      <version>5.1.46</version>
    </dependency>
  • 構建mybatis源碼
    mvn clear install命令構建,如果構建成功,則忽略以下解釋(專門爲構建失敗的夥伴準備的)。
    如何大家使用mvn clear install命令構建源碼,也是會失敗的,因爲mybatis依賴的parent項目構建失敗,wagon-ssh 依賴失敗。但是不影響我們跟蹤源碼。
    “實踐是檢驗真理的唯一標準”。構建失敗不影響大家跟蹤源碼要用事實證明,小編簡單在編碼裏寫了一個demo,運行一下證明成功運行。
    在這裏插入圖片描述後面小編會專門寫一篇如何demo構建跟蹤源碼。

白嫖無義,大家如有收穫,請給小編愛心三連,激勵小編更好的創作!!!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章