Jsqlparser源碼編譯環境搭建(原創)


一、JSQLParser介紹

JSQLParser是一款開源的SQL語句解析器,使用它可以把SQL語句解析成一組層次分明的java類。
JSQLParser的項目地址為:
https://github.com/JSQLParser/JSqlParser/wiki#what-is-jsqlparser 我下載到的版本為0.9.4。

二、搭建環境介紹

  1. Java版本為JDK1.8;
  2. JSQLParser版本為0.9.4,我是從上面的項目地址中下載到的;
  3. Eclipse版本為Mars Release (4.5.0)

三、導入源碼工程

3.1 導入Maven項目

首先我們將下載到的源碼解壓后得到的項目文件夾導入到Eclipse中,注意這個時候我們要以Maven項目的形式導入,如下圖:
Maven項目導入
我導入后的情況是這樣:
第一次導入的樣子
有很多未知的錯誤,下面我們一一解決。

3.2 添加依賴庫

打開項目中的pom.xml文件,從其中的下面這段代碼中我們可以看出,JSQLParser依賴Junit4.11,commons-io 2.4:
依賴庫

然后我們查看項目中Maven的依賴庫中是否已經有這些依賴庫,我在導入之后自帶了這些依賴庫,因此不需要再添加,如果你的項目中沒有這些依賴庫,我們可以分別下載,在通過Build Path中的Library添加這些庫,具體的下載和添加依賴庫請百度。
我的項目中已經自帶這些依賴庫

然后根據官方文檔https://github.com/JSQLParser/JSqlParser/wiki ,需要添加一些代碼(紅色部分),注意圖中圓圈的部分,這表示當前的JSQLParse的版本號,我的是0.9.4,千萬不能填錯,否則會有一些類找不到(可能和版本有關系),這個部分后來發現,其實是用於添加jsqlparse0.9.4.jar庫的,這個步驟做了之后,就不需要做步驟3.5了,找不到的類會直接調用庫中的。
需要添加的代碼

3.3 修復一些BUG

即使我們做了上面一些工作,pom.xml文件中還是存在兩個錯誤:
bug
錯誤的提示信息為:
錯誤信息
通過百度,我找到了一個解決辦法 http://blog.sina.com.cn/s/blog_6accbcc30101duig.html,
在< plugins >< /plugins >標簽的外面添加一個< pluginManagement >< /pluginManagement >的標簽。
像這樣:

 
 
 
         
  1. <build>
  2. <pluginManagement>
  3. <plugins>
  4. <plugin>
  5. ...
  6. </plugin>
  7. ...
  8. </plugins>
  9. </pluginManagement>
  10. </build>

這個時候應該紅叉叉的錯誤提示就應該沒有了。

3.5 使用JavaCC生成一些類

在我們做完以上步驟之后,項目中還存在很多錯誤(如果沒有的話,祝賀你已經安裝成功了),都是由於找不到類造成的,這是因為JSQlParse是基於JavaCC的(關於JavaCC(http://www.cnblogs.com/Gavin_Liu/archive/2009/03/07/1405029.html),
JSQLParser源碼中SQL解析那部分是使用JavaCC來生成的,在JSQLParser的源碼中,你可以看到JSqlParserCC.jj這樣一個文件。
這里我們先需要安裝JavaCC,在Eclipse中有一個JavaCC的插件,具體安裝方法,可以參考這里(http://eclipse-javacc.sourceforge.net/)
安裝完成之后,找到下面這個文件,
JSQLParserCC.jjt
在這個文件上右擊,選擇圖中紅色部分:
紅色部分
一會之后就會生成很多Java文件,把這些新生成的Java文件復制到這里:
復制到這里

另外說一點,凡是在src/test/resources中的所有存在錯誤的文件都可以刪除,這些文件都是作者寫的例子,有些代碼比較老,和當前版本不兼容造成的。






免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM