java - Vim可以直接运行代码吗
大家讲道理
大家讲道理 2017-04-18 09:06:46
0
6
326

最近在尝试使用 Vim,有个问题请教,就

public class test {
    public static void main(String args[]) {
        System.out.print("shit,Test success!");
    }
}

在 Vim 中,我可以直接运行调试吗,像 Sublime 的 cmd+B 一样。

大家讲道理
大家讲道理

光阴似箭催人老,日月如移越少年。

membalas semua(6)
左手右手慢动作

Menurut soalan, selepas mengedit kod, tekan kekunci pintasan untuk menyusun dan menjalankannya secara automatik.

Rancang

Dalam vim, arahan luaran boleh dilaksanakan melalui :!cmd Sepadan dengan fail tunggal yang ditulis oleh subjek:

:!javac %  #=> 编译, % 为正在编辑的文件名
:!java %:r  #=> 运行, %:r 去掉文件名的后缀

Ini adalah prinsipnya, cuma tetapkan pemetaan kunci seterusnya Dalam fail .vimrc, tambah kandungan berikut

autocmd BufNewFile,BufReadPre *.java nmap <leader>rn :!javac %<cr>:!java %:r<cr>

bermakna sebelum membuat atau membaca fail .java, pintasan <leader>rn akan dipetakan secara automatik kepada arahan

Sudah tentu, anda juga boleh menetapkannya kepada dua kekunci pintasan Tidak disyorkan untuk menggunakan kekunci pintasan Command di sini, tetapi gunakan Leader sebenarnya, terminal vim tidak boleh dipetakan ke Command, hanya MacVimYa.

Lanjutan 1: Berbilang fail

Tidak ada yang salah dengan berbilang fail Apabila javac digunakan, gantikan % dengan *.java dan gantikan %:r dengan nama fail sebenar di mana main terletak

Lanjutan 2: Projek

Jika projek anda mempunyai struktur tetap, pada asasnya adalah sama

Apabila menyusun, anda boleh menambah pilihan

untuk menentukan laluan pergantungan dan pilihan

untuk menentukan laluan output Jika anda mahu membungkusnya sebagai -cp, tambah kekunci pintasan.-d jarAnda boleh mentakrifkan fail sifat

dalam direktori akar projek untuk menerangkan struktur projek dan kebergantungan, kemudian gunakan bahasa

atau bahasa .project untuk membaca fail sifat, menyusun dan keluaran masing-masing , pergi ke VimLLihat dalam direktori, lokasi mereka sangat biasa pythonSekarang, anda boleh memetakan kekunci kepada operasi di atas, iaitu kekunci pintasan ~/.m2/Terdapat banyak selain

, terdapat setiap huruf dan nombor, dan

serta sebarang panjang huruf Dan. nombor, vim tidak mencukupi, atau Ctrl/Alt/Shift awalan, anda mungkin lebih suka leader.leader mapleaderF1-F12Lanjutan 3: Kebergantungan

OK, pada dasarnya anda telah mencipta semula

, kecuali untuk fungsi memuat turun kebergantungan secara automatik Tetapi
mempunyai begitu banyak perpustakaan rangkaian, saya rasa gudang

harus dibuka kepada dunia luar, asalkan. semasa anda mengikuti Protokol yang berkaitan boleh dimuat turun Jika terdapat perhubungan pergantungan antara pakej, anda boleh menggunakan maven untuk menulis algoritma pemprosesan pergantungan python mvnWalaupun python seperti sampah, kami menyokong

,

, VimL, sentiasa ada antara muka bahasa yang anda suka, apa sahaja yang anda fikir lambat, tidak mengapa, gunakan python Tulis dan jadikan ia menjadi struktur Ruby Lihat cara Lua orang lain melaksanakannya dan menirunya.C++ C/SYCMMultimate: Selesai

Baiklah, kebergantungan kompilasi, berjalan dan pembungkusan telah diselesaikan, tetapi ia masih merupakan pemalam pengurusan projek Tiada penyempurnaan semasa menulis

, begitu banyak
, nama kaedah yang begitu panjang, dan pelbagai boilerplate. kaedah menulis dan Semua jenis pengecualian pelik dilemparkan, tulisan tangan

kod benar-benar susah payah, dan ia memerlukan banyak kapasiti otak.Java

Bagaimanakah ini boleh berfungsi? data analisis tatabahasa tidak akan dikongsi Anda perlu menulis penganalisis tatabahasa sendiri, ya, untuk Vim..., untuk melakukan penyiapan pintar.YCM ClangJadi, GNUSaya benar-benar tidak tahu apa yang berlaku di sini, tetapi g++ia telah dilakukan pada tahun 1995, C++ia telah dilakukan pada tahun 1991, dan mereka berdua menghabiskan masa selama 20 tahun bersama telah bertahun-tahun, dan dalam tempoh ini, pelbagai

telah dieksport, tetapi saya tidak pernah melihat sesiapa yang memperbodohkan diri mereka sendiri

JavaJava Untuk pelengkapan yang disediakan oleh vim, gunakan Java IDE Tiada kaitan dengan

hanya menyediakan antara muka

boleh berfungsi seperti biasa tanpa YCM 🎜> Untuk menggunakan pemalam, anda perlu memasang Java, eclim yang terkenal dengan sumber terbuka yang perlahan dengan kata lain, YCM menggunakan YCM di bahagian bawah untuk melengkapkannya Tidak kisah dengan kelajuan permulaan yang sangat perlahan dan kelajuan penyiapan, anda boleh mencubanya.eclim YCM Ini tidak dapat ditanggung, jadi pengarang segera mula menulis penganalisis sintaks untuk eclim menggunakan eclipse, menjadikannya seni bina Java dan berkomunikasi dengan pelayan dalam pemalam untuk melengkapkannya juga boleh Tulis IDE hujung belakang terus ke eclim.eclipse

Dikatakan bilangan muka surat

standard tatabahasa sudah melebihi C++ Tapi tak apa, susah pun kena buat walaupun tak ada kepayahan, apatah lagi susah.Java C/SPada ketika ini, saya telah menunjukkan jalan menuju kerohanian untuk subjek tersebut Selepas memanjat duri, anda akan menjadi tuhan kekal bagi dunia YCM dan Java, dan ia akan berakhir sepenuhnya 🎜> tidak sesuai untuk menulis kutukan

Pengikut kedua-dua puak akan menyembah dan menyembah anda selama-lamanya.

JavaJika C++ masih hidup semasa anda menulis ini...,

Platform ini mempunyai banyak bahasa saudara...

vimMengapa kamu tidak berkata Java, kerana Vimmengajarkan kehidupan yang kekal!!!Java

PosskripJavaJVM

Saya dengan ini mengisytiharkan bahawa artikel ini tidak mengandungi sebarang ejekan, usikan, ejekan atau persoalan mengenai subjek topik tersebut. Saya tidak akan memohon maaf jika saya membuat subjek subjek tidak berpuas hati.

vim Saya hanya mengatakan ini, tiada yang mustahil untuk vim, selagi anda mempunyai kemahiran dan masa yang mencukupi Ini terutamanya kerana

hanyalah editor, ia membuka semua antara muka terbuka, anda Apa sahaja yang anda mahu. untuk melakukannya, tulis sahaja pemalam Bahasa Cina
, selain daripada beberapa log kemas kini, mempunyai sekurang-kurangnya

halaman Walaupun anda selesai membacanya, anda mungkin tidak dapat menulis pemalam. anda masih perlu membaca buku itu. Hanya

Saya mencatat nota kasar 300 halaman pertama panduan pengguna dan mengambil
beberapa baris nota itu sangat ringkas sehingga hanya saya yang dapat memahaminya

Biasanya, mengenai isu ini, Vim menyediakan antara muka :make untuk menyusun, dan makeprg untuk menetapkan parameter kompilasi Tetapi perlu diakui bahawa pada permulaan Vim reka bentuk, kebanyakan reka bentuk adalah untuk Dibuat dalam bahasa yang disusun seperti C, objek teks seperti a{ memilih kod dalam {}, tetapi untuk python, Kod blok ialah kod inden yang sama tanpa {} Untuk Scala, apabila blok hanya mempunyai satu pernyataan, {}.

boleh ditinggalkan.

Didedikasikan kepada semua Vimer yang telah berjuang untuk menulis Java, jangan takut, saya juga salah seorang daripada anda

Vim tidak sempurna, tetapi ia lebih baik daripada kebanyakan Vimer kelihatan

Saya percaya bahawa semua orang yang baru belajar Vim dan kagum dengan kuasa Vim telah cuba mengatakan sesuatu yang berani, Vim在手, 天下我有 Kemudian, mereka bertemu Java di tempat kerja dan jatuh ke dalam kesakitan berpura-pura. Dalam keadaan yang kumuh, sama ada memutuskan untuk mencari pekerjaan lain, atau menggunakan IDE apabila saya melihat ke belakang lagi, Kemudian saya melihat batasan Vim.

Melihat kekuatan alat bukanlah memahami, melihat batasannya adalah pemahaman yang benar.

黄色的树林里分出两条路
而我选择了IDE
你呢

Kemas kini

Fail tunggaljavaKompilasi dan pemetaan fail, hanya tekan enter sekali untuk mengurangkan gangguan

autocmd BufNewFile,BufReadPre *.java nnoremap <leader>rs :up <bar> !javac % && java %:r<cr>
autocmd BufNewFile,BufReadPre *.java nnoremap <leader>cs :up <bar> !javac %<cr>

Pada asasnya, dalam direktori yang sama, fail perpustakaan disusun dengan <leader>cs dan fail boleh laku disusun dengan <leader>rs

Di sini

ialah singkatan rs, sama seperti run single file ialah cs.compile single file

terutamanya sepadan dengan

dan rp Anda boleh menggunakan cp untuk menyusun peta dan menjalankan fail projek :!mvn subcmd sepadan dengan p.project

洪涛

Tidakkah anda nampak bahawa test.class telah dijana?


Ia sepatutnya boleh dilakukan, tetapi ia memerlukan sokongan pemalam.

左手右手慢动作

Tidak, vim sendiri tidak mempunyai fungsi pautan pengkompil Tidak diketahui sama ada ia boleh dikonfigurasikan atau disokong oleh pemalam yang berkaitan

Ty80

Helo, saya menggunakan vim untuk membangunkan Java Anda boleh mencuba pemalam ujian unit yang saya tulis untuk melaksanakan ujian
https://github.com/wsdjeg/JavaUnit.vim

.

Sudah tentu anda juga boleh menggunakan konfigurasi saya secara langsung

https://github.com/wsdjeg/DotFiles

左手右手慢动作

Biasanya ini tidak mungkin kerana vim tidak boleh menyusun dan menjana fail kelas

巴扎黑
map <F4> :"!javac %"<cr>
map <F5> :"!java %<"<cr>

Tambahkan dua ayat ini pada fail konfigurasi, F4 untuk menyusun, F5 untuk dijalankan (perhatikan ruang selepas <F4><F5>), sudah tentu, premisnya ialah anda telah memasang jdk dan mengkonfigurasi pembolehubah persekitaran. Menyahpepijat terasa teruk

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan