当前位置: 移动技术网 > IT编程>开发语言>Java > 如何把VS Code打造成Java开发IDE

如何把VS Code打造成Java开发IDE

2020年10月15日  | 移动技术网IT编程  | 我要评论
近期,公司推行正版化,本人使用的是jetbrains教育版,是不允许进行商业开发的,因此开启了艰难的备用ide选型之路。最终,我选定了轻量级的visual studio code(以下简称vs cod

近期,公司推行正版化,本人使用的是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 http://code.visualstudio.com 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。
  • 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一样胜在开源免费,所以还是可堪一用的。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持移动技术网。

如您对本文有疑问或者有任何想说的,请点击进行留言回复,万千网友为您解惑!

相关文章:

验证码:
移动技术网