溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

怎么在eclipse中配置MySQL源碼環(huán)境

發(fā)布時(shí)間:2021-08-17 11:11:13 來源:億速云 閱讀:178 作者:chen 欄目:MySQL數(shù)據(jù)庫

本篇內(nèi)容介紹了“怎么在eclipse中配置MySQL源碼環(huán)境”的有關(guān)知識,在實(shí)際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細(xì)閱讀,能夠?qū)W有所成!

今天費(fèi)了些周折,總算搭建好了MySQL源碼的調(diào)試環(huán)境,主要的目的就是想在看代碼的時(shí)候有一些頭緒,讓這些開發(fā)技巧派上用場。不至于盲人摸象一般的拿著命令肉眼掃視,當(dāng)然對于代碼至于能不能啃下來,那是另外一回事了。

我來說說我的情況,Java開發(fā)還有一點(diǎn)基礎(chǔ),所以以前的eclipse還算用得比較熟悉。大家知道InnoDB的源碼是c,MySQL Server的是c++,這樣一套環(huán)境想調(diào)試好,如果沒有這方面的平臺開發(fā)經(jīng)驗(yàn)其實(shí)還是有一點(diǎn)難度的。最后我還是決定使用eclipse來做,基于Windows平臺。

里面趟了好幾個坑,讓我苦不堪言。

先要做幾件事情

1)下載MySQL源碼

2)下載開發(fā)IDE eclipse

3) 編譯環(huán)境調(diào)試

4) 配置代碼調(diào)試方式

下載MySQL源碼

MySQL源碼的下載,直接到www.mysql.com上面,選擇社區(qū)版,下載類型是source code,就可以看到下面的選項(xiàng)了。

怎么在eclipse中配置MySQL源碼環(huán)境

比如說我選擇的是這個5.6.35的版本。最新的是5.7的,再早一些的是5.5版本的,之前的還真不好找了,得通過其他渠道了。

下載IDE eclipse

eclipse是個開發(fā)通用平臺的IDE,不過這個說法現(xiàn)在受到了IntelliJ IDEA的挑戰(zhàn),目前來看挑戰(zhàn)成功,其中有一部分原因和新版本的一些界面的改進(jìn)有關(guān),不過相對來說eclipse這個工具Java開發(fā)者用得多一些,有些面試?yán)镞€會問里面的幾個快捷鍵,一問就能問出來i用得怎么樣。可能有的朋友就會問,eclipse是Java開發(fā)用得多一些,那和MySQL源碼環(huán)境有什么關(guān)系。難道在里面用Java編輯器看c++代碼,非也。

因?yàn)閑clipse還是有c++版的插件的,可以在www.eclipse.org上面下載c++版本專屬的。

坑點(diǎn)1

但是下載之后,啟動eclipse失敗,錯誤是Failed to load the JNI shared library jvm.dll”,這個錯誤的大多數(shù)說法是和JDK的位數(shù)有關(guān),比如32位,64位的兼容性有關(guān),當(dāng)前的環(huán)境是一個JDK6的環(huán)境,看來孩不夠,我再下載個JDK7的試試。官網(wǎng)已經(jīng)直接下載不了了,得通過mos下載。

配置好環(huán)境之后,收到的錯誤變樣了,我感覺被這個錯誤玩弄了。

怎么在eclipse中配置MySQL源碼環(huán)境

一個IDE升級那么新版本的JDK干什么,然后又這回來下載JDK8。官網(wǎng)下載的還是安裝版的。我就默默的看著下面的這個霸氣的硬廣,直到安裝成功。其實(shí)相對來說,我還是喜歡解壓版的。

怎么在eclipse中配置MySQL源碼環(huán)境

eclipse可以啟動了,我創(chuàng)建了一個項(xiàng)目,我命名為mysql_5_6_35

怎么在eclipse中配置MySQL源碼環(huán)境

這個時(shí)候環(huán)境還是基本空白的,先創(chuàng)建好再說。

怎么在eclipse中配置MySQL源碼環(huán)境

簡單確認(rèn)之后,就創(chuàng)建好了一個項(xiàng)目,新版本的exlipse就開始生成了工作目錄。啟動的界面還是不錯的。

怎么在eclipse中配置MySQL源碼環(huán)境

編譯環(huán)境調(diào)試

啟動了eclipse,創(chuàng)建了項(xiàng)目,我們可以從指定的目錄下導(dǎo)入源碼包里的代碼。當(dāng)然不出所料,打開代碼之后,發(fā)現(xiàn)后臺開始報(bào)出了下面的錯誤。編譯環(huán)境就有有問題。

怎么在eclipse中配置MySQL源碼環(huán)境

這個時(shí)候如果能配置好還是很有意思的,可以在windows上來安裝一下gcc,g++的環(huán)境,可以參考https://sourceforge.net/projects/mingw/這個網(wǎng)站,下載即可。

怎么在eclipse中配置MySQL源碼環(huán)境

這個軟件的風(fēng)格蠻有意思,下載安裝包的時(shí)候是下面的安裝進(jìn)度,需要安裝哪些插件,也基本是這樣的形式。

怎么在eclipse中配置MySQL源碼環(huán)境

我們不光要gcc的,還要g++,在安裝好的軟件基礎(chǔ)上需要再下載新的包來安裝。最后會提示安裝成功。

怎么在eclipse中配置MySQL源碼環(huán)境

在eclipse里面還是需要做一些基本的配置的。根據(jù)紅色的框圖找到對應(yīng)的菜單,修改右下角的路徑,這個路徑就是我們剛剛安裝的軟件所在的目錄。

怎么在eclipse中配置MySQL源碼環(huán)境

比如我安裝在了D盤,就配置成下面紅框的路徑。

怎么在eclipse中配置MySQL源碼環(huán)境

這個時(shí)候還有一個問題,提示make沒有配置,這個問題可讓我有些摸不著頭腦。gcc都裝了,make檢查了也是安裝成功的,為什么提示配置里沒有呢。這里有一個梗。我們需要把下面的文件改個名字,其實(shí)它就是make

怎么在eclipse中配置MySQL源碼環(huán)境

配置好環(huán)境,編譯就大體沒有問題了。

怎么在eclipse中配置MySQL源碼環(huán)境

配置代碼調(diào)試方式

其實(shí)上面的環(huán)境配置也算是一個輔助,如果我們只是看看代碼,其實(shí)也能接受,不過下面的這個功能用不了,查看代碼就會困難重重。比如我鼠標(biāo)點(diǎn)擊到代碼里的某一個方法,根據(jù)調(diào)用關(guān)系我能夠很快定位到另一個文件的調(diào)用函數(shù),如此一來查看邏輯就會清楚許多。

但是這個功能在eclipse竟然用不了,熟悉Java開發(fā)的同學(xué)應(yīng)該都熟悉這個outline的功能,一個文件里面有哪些函數(shù),哪些變量都可以一目了然,所以這種情況得改進(jìn),發(fā)現(xiàn)無法啟用的原因是我打開的其中一個文件的代碼行數(shù)超過了5000行。默認(rèn)eclipse的配置,超過5000行就啟用不了outline了,我們改一下紅框的配置即可。

怎么在eclipse中配置MySQL源碼環(huán)境

配置好之后,重啟eclipse就沒問題了,可以看到右邊的outline信息,求會清晰很多,點(diǎn)擊代碼也會有這種定位功能,這下看代碼就方便多了。比如我們查看InnoDB的代碼,到storage/Innobase/handler/ha_innodb.cc這個文件,這會是我學(xué)習(xí)innodb的一個關(guān)鍵接口文件。

怎么在eclipse中配置MySQL源碼環(huán)境

“怎么在eclipse中配置MySQL源碼環(huán)境”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識可以關(guān)注億速云網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實(shí)用文章!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI