前言
由于已經(jīng)習慣了vim下的各種姿勢, 剛開始學習java時雖然有很多優(yōu)秀的IDE可以選, 但本著vim下一切皆有可能, 一切都可編輯的本性, 嘗試著配置vim, 使其足以應付java的學習.
文件編譯運行
單文件
直接
vim Test.java
由于之前已經(jīng)安裝了YCM, 所以有基本的java關鍵字補全, 但遠遠不夠
編譯和運行時, 需要退出vim或者使用
!javac Test.java
和!java Test
, 或者切換到另外一個命令行執(zhí)行, 雖然可以使用歷史命令, 但依舊很不方便于是, 在
~/.vimrc
文件中添加如下內容:
" java代碼編譯執(zhí)行
autocmd BufNewFile,BufReadPre *.java nnoremap <leader>cr :w<cr>:!javac %<cr>:!java %:r<cr>
- normal模式下
;cr
直接編譯執(zhí)行
多文件
- 如果多個關聯(lián)的文件放在一個目錄下, 為了編譯執(zhí)行方便, 在
~/.vimrc
中添加如下內容:
autocmd BufNewFile,BufReadPre *.java nnoremap <leader>cra :w<cr>:!javac *.java<cr>:!java Main<cr>
注意! main方法必須在Main.java文件中.
normal模式下
;cr
直接編譯執(zhí)行
java工程管理
采用eclim
java代碼補全
只有關鍵字的補全太雞肋, 只能借助eclim
java代碼調試
jdk中有jdb工具調試, 但是可能我覺得System.out.println(" ");
更好用?
eclim安裝配置及使用
安裝
- 以下安裝過程參考自官方文檔
準備條件
- jdk1.8或者更高版本, 我的是jdk11
這個可以直接通過apt安裝(主要是官方包下載太慢), 參考https://blog.51cto.com/vvxyz/1642258
- vim7.1或者更高版本, 我的是vim8.1
vim中, 如果:echo &compatible
輸出不為0
同時:filetype
輸出不為filetype detection:ON plugin:ON indent:ON
需要在~/.vimrc
文件中添加:
set nocompatible
filetype plugin indent on
- eclipse4.8.x(Photon), 這個包不是很大, 但是鑒于國內網(wǎng)速太慢, 請自備梯子, 也可以通過其他方式下載, 只要清楚eclipse的安裝位置
(雖然只有安裝了eclipse才能安裝eclim, 貌似明明可以使用eclipse卻偏不用, 但是vim好用啊)
python(2.7或3.x)
make
gcc
開始安裝
首先需要給下好的bin文件添加執(zhí)行權限,
chmod +x eclim_2.8.0.bin
由于安裝時需要聯(lián)網(wǎng)驗證, 而國內又不允許, 所以請自備梯子代理
./eclim_2.8.0.bin --proxy 127.0.0.1:1080
或者
./eclim_2.8.0.bin --proxy user:password@127.0.0.1:1080
ip地址和端口號請自行更改
然后, 就可以安裝安裝提示, 進行輸入安裝了
其他更多安裝以及更新以及卸載方式, 請參考eclim官網(wǎng)安裝教程
配置
由于eclim是通過運行服務器來處理請求, 所以需要先運行eclim服務, 找到eclimd運行程序的路徑(在安裝eclim時告訴了你)
為了以后執(zhí)行方便, 可以alias eclimd='/home/didong/eclipse/committers-2019-06/eclipse/eclimd'
, 將其放在/etc/bash.bashrc
中, 設置永久別名
甚至為了方便, 可以在/etc/rc.local
文件中設置開機自啟
eclimd -b
可設置后臺啟動
java代碼補全
在安裝了YCM的前提下, 在~/.vimrc
中添加let g:EclimCompletionMethod = 'omnifunc'
注意, java的代碼補全只能在工程java文件中使用
如果沒有安裝YCM, 或者安裝了其他的第三方補全插件, 參考http://eclim.org/vim/code_completion.html
使用
簡單工程管理
:ProjectCreate ./my_java_project -n java
, 創(chuàng)建一個java工程, 也可以創(chuàng)建其他類型的工程, 詳情參考官網(wǎng)入門教程在創(chuàng)建項目后, 會有一個
.project
文件添加到項目的根目錄, 以及另外一個文件(java為.classpath文件)由于引用項目的源目錄和項目使用的任何第三方庫, 其他語言的文件類型, 請參考官方入門教程:ProjectList
列出可用項目:NewSrcEntry src/java
添加名為java的源目錄, 這會在.classpath
文件的末尾添加必要的條目<classpathentry kind="src" path="src/java"/>
, 注意, 依舊需要自己通過mkdir
創(chuàng)建目錄:Java
運行代碼
代碼格式化
:JavaFormat
, 格式化當前行或visual模式下選中行
:%JavaFormat
, 格式化整個文件
重命名
將光標放到希望重命名的元素上, :JavaRename 新名
即可
類型創(chuàng)建
- class (a new class)
- interface (a new interface)
- abstrac (a new abstract class)
- enum (a new enum)
- @interface (a new annotation)
:JavaNew class MyNewClass
其他更多
參考http://eclim.org/vim/java/index.html
參考內容
http://www.reibang.com/p/b0fb705c171a