首先談談這個需求怎么來的,為什么需要一個遠程的項目開發(fā)環(huán)境。
在日常開發(fā)中,項目代碼總是需要在遠程服務器上編譯運行,直接在服務器上用VIM編輯效率太低;而如果在本地使用編輯器、閱讀器、IDEA把代碼編輯好,然后通過scp等工具傳到遠程的服務器上編譯運行,這樣又需要幾個窗口來回切換,非常麻煩
有沒有一個工具可以將代碼放在遠程服務器上,在本地僅僅作為一個瀏覽的編輯器,所有修改可以直接同步到服務器上呢。答案是有的,這就是VScode,本篇博客就是分享下如何用VScode實現(xiàn)這種功能提高開發(fā)效率,以C/C++開發(fā)環(huán)境為例,展示多工程依賴關系時,采用的是DPDK和OVS(OVS的編譯需要用到DPDK的庫,所以DPDK相當于一個SDK,VScode可以實現(xiàn)在OVS代碼中根據(jù)函數(shù)定義跳轉到DPDK源碼中)。
VScode作為微軟推出一款輕量化開發(fā)工具,其本身很小,只有幾十兆,然而豐富的插件使他的功能也非常強大。
首先在官網(wǎng)https://code.visualstudio.com/下載VScode。
雙擊安裝完畢后,打開VScode,看到如下界面:

首先,安裝SSH和C語言環(huán)境插件,直接有一個“C/C++ Extension Pack”的插件全部都包含了。安裝插件:

插件安裝完成后,點擊左下角的綠色終端符號,選擇“Connect current window to Host”,第一次使用需要配置遠程服務器的IP、用戶名和密碼等:

遠程連接完成后,在“文件”->“打開文件夾”中打開我們想要去編輯修改的項目文件夾,這時你會發(fā)現(xiàn)路徑已經是遠程服務器的文件系統(tǒng)了(這里是OVS的根目錄):

在資源管理器中,隨便打開一個文件,會發(fā)現(xiàn)里面有很多頭文件找不到,比如說屬于DPDK的頭文件:

這就需要在路徑中修復,點擊“快速修復”,跳轉如下界面:

點擊左邊的“C_cpp_properties.json”,進入配置文件修改,在includePath中添加DPDK的頭文件、源文件目錄,“**”代表遞歸以下子文件夾,保存:

返回剛才的源文件,可以看到找不到頭文件的錯誤消失了,隨便找一個DPDK中的函數(shù),鼠標放上去可以顯示函數(shù)的定義:

右鍵跳轉定義,可以看到此時彈出的文件,已經是打開了DPDK根目錄下的對應文件,顯示了該函數(shù)的實現(xiàn):

這還沒完,VScode的SSH插件還指出直接打開命令行,快捷鍵“ctrl+`”,打開遠程服務器的終端,一邊改代碼一邊調試:

除此之外,如果怕遠程連接突然斷開,代碼隨著遠程服務器一起down了,還可以利用git插件,方便地將代碼同步到github上。
Now, enjoy it~