如何把VSCode打造成Java开发IDE
近期,公司推⾏正版化,本⼈使⽤的是JetBrains教育版,是不允许进⾏商业开发的,因此开启了艰难的备⽤IDE选型之路。最终,我选定了轻量级的Visual Studio Code(以下简称VS Code)。
各种IDE选型⽐较的过程就不赘述了,Eclipse、NetBeans、Srping Tools Suite等等,只能说青菜萝⼘各有所爱。
插件淘沙
众所周知,VS Code是⼀款轻量级的通⽤编辑器,和Eclipse⼀样全靠海量的插件扩展,⽹上各类插件推荐⽂章⼜都是⾯向VS Code的最⼤IDE⽤户-前端开发⼈员的。
⽆奈之下只能逐⼀试验,⼜开始了⼀轮插件淘沙的过程,最终筛选出⼏⼗款插件,详见vscode-java-dev-tools-
pack/README.md。
定制Extension Pack#
插件是筛选出来了,但是⼏⼗款插件总不能每次都⼀个⼀个去点击安装吧,⽽且也难以维护。
幸⽽VS Code⾃⾝提供了⼀种叫Extension Pack的插件,这种插件的⽬的就是为了汇集⼀批插件到⼀起⽽设计的,安装了⼀个Extension Pack就会⾃动安装Pack内的全部插件。
VS Code提供了⼀套nodejs⼯具⽤于辅助开发者创建扩展,同时官⽅⽂档中提供了简单明了的⽂档说明以及丰富的samples,samples包括Command、Color Theme、Tree View等等,本⽂仅做Extension Pack的⽰例。
环境准备
环境依赖 nodejs 以及 Git,以MacOS为例,通过Homebrew安装:
brew install node git
然后通过 npm 安装Yeoman和VS Code Extension Generator:
npm install -g yo generator-code
⼯程初始化
调⽤Yeoman⽣成新的Extension Pack
$ yo code
_-----_  ╭──────────────────────────╮
|  | │ Welcome to the Visual │
|--(o)--| │ Studio Code Extension │
`---------´ │  generator!  │
( _´U`_ ) ╰──────────────────────────╯
/___A___\ /
| ~ |
__'.___.'__
´ ` |° ´ Y `
What type of extension do you want to create
New Extension (TypeScript)
New Extension (JavaScript)
New Color Theme
New Language Support
New Code Snippets
New Keymap
❯ New Extension Pack
New Language Pack (Localization)
回车后会提问是否要将当前已安装的扩展安装到新的Extension Pack中,选择Yes会报错
What type of extension do you want to create New Extension Pack
Add the currently installed extensions to the extension pack Yes
Error code
Command failed: code --list-extensions
/bin/sh: code: command not found
这是因为我的VS Code并不是通过命令⾏安装的,如果要使⽤code命令就需要通过命令⾏安装VS Code,然后重新执⾏yo code。
MacOS上通过Homebrew安装vs code:
brew cask install visual-studio-code
当然也可以选择不⾃动安装已有扩展,同样可以顺利进⾏后⾯的配置。
What type of extension do you want to create New Extension Pack
Add the currently installed extensions to the extension pack No
What's the name of your extension vscode-java-dev-tools-pack
What's the identifier of your extension vscode-java-dev-tools-pack
What's the description of your extension Some Java develop support tools extension pack.
Initialize a git repository Yes
create vscode-java-dev-tools-pack/.vscode/launch.json
create vscode-java-dev-tools-pack/package.json
create vscode-java-dev-tools-pack/vsc-extension-quickstart.md
create vscode-java-dev-tools-pack/README.md
create vscode-java-dev-tools-pack/CHANGELOG.md
create vscode-java-dev-tools-pack/.vscodeignore
create vscode-java-dev-tools-pack/.gitignore
create vscode-java-dev-tools-pack/.gitattributes
Your extension vscode-java-dev-tools-pack has been created!
To start editing with Visual Studio Code, use the following commands:
cd vscode-java-dev-tools-pack
code .
Open vsc-extension-quickstart.md inside the new extension for further instructions
on how to modify, test and publish your extension.
For more information, also visit code.visualstudio and follow us @code.
通过Yeoman⼯具,我们配置了name、identifier、description,并且⼯具⾃动⽣成了⼀个本地git仓库,⼯程⽬录结构如下:$ tree -a -L 1
.
├── .git
├── .gitattributes
├── .gitignore
├── .vscode
├── .vscodeignore
├── CHANGELOG.md
├── README.md
├── package.json
└── vsc-extension-quickstart.md
CHANGELOG.md 发布变更记录,在Visutal Studio Code Marketplace的详情页中有该⽂件的链接。
README.md 在Visutal Studio Code Marketplace的扩展详情,作⽤类似GitHub Page。
java编译器ide最新版下载package.json 扩展的 manifest⽂件,定义了扩展的相关属性。
vsc-extension-quickstart.md 针对⽣成的⼯程中⽂件的简易说明⽂档。
package.json
作为Extension Pack类型的VS Code 扩展来说,只需要维护package.json就⾏,package.json中的各项字段可以参考VS Code的官⽅⽂档Extension Manifest。
也可以参考我的vscode-java-dev-tools-pack/package.json,这是⼀个⽐较完整的Demo。
package & publish
微软关于插件打包发布可以参考⽂档Publishing Extensions。
微软提供了vsce这款命令⾏⼯具⽅便开发者进⾏打包和发布:
npm install -g vsce
安装完成后,cd到⼯程⽬录下,进⾏打包⽣成.vsix⽂件
$ vsce package
DONE Packaged: /Users/larva-zhang/vscode-java-dev-tools-pack/vscode-java-dev-tools-pack-0.0.1.vsix (7 files,
16.7KB)
注意版本号,是根据package.json⽂件中的version来⽣成的,version必须是major.minor.stage的格式
package成功后,需要去vs code创建⼀个publisher,推荐通过浏览器访问management page创建,⽐较直观。
也可以通过vsce命令⾏创建,详见Create a publisher
有了publisher后就能进⾏publish了,还是在management page页⾯,通过上传.vsix⽂件的⽅式即可,当vs code校验通过后就会发布到Visual Studio Code Marketplace。
publish同样可以通过vsce命令⾏进⾏,详见Log in to a publisher
总结
插件安装完成后还是需要逐⼀去配置调试的,这个没法⾃动化,毕竟各⼈喜好不同,不过⼤多数插件都是开箱即⽤的。
作为开源的轻量级通⽤编辑器,VS Code的Java开发体验确实不如JetBrains,但和Eclipse⼀样胜在开源免费,所以还是可堪⼀⽤的。
以上就是本⽂的全部内容,希望对⼤家的学习有所帮助,也希望⼤家多多⽀持。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。