赞
踩
近期,公司推行正版化,本人使用的是 JetBrains 教育版,是不允许进行商业开发的,因此开启了艰难的备用 IDE 选型之路。最终,我选定了轻量级的 Visual Studio Code(以下简称 VS Code)。
各种 IDE 选型比较的过程就不赘述了,Eclipse、NetBeans、Srping Tools Suite 等等,只能说青菜萝卜各有所爱。
众所周知,VS Code 是一款轻量级的通用编辑器,和 Eclipse 一样全靠海量的插件扩展,网上各类插件推荐文章又都是面向 VS Code 的最大 IDE 用户群 - 前端开发人员的。
无奈之下只能逐一试验,又开始了一轮插件淘沙的过程,最终筛选出几十款插件,详见
https://github.com/larva-zhang/vscode-java-dev-tools-pack/blob/master/README.md
插件是筛选出来了,但是几十款插件总不能每次都一个一个去点击安装吧,而且也难以维护。
幸而 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
- 1
当然也可以选择不自动安装已有扩展,同样可以顺利进行后面的配置。
? 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
作为 Extension Pack 类型的 VS Code 扩展来说,只需要维护 package.json 就行,package.json 中的各项字段可以参考 VS Code 的官方文档:
https://code.visualstudio.com/api/references/extension-manifest
也可以参考我的 vscode-java-dev-tools-pack/package.json,这是一个比较完整的 Demo。
https://github.com/larva-zhang/vscode-java-dev-tools-pack/blob/master/package.json
微软关于插件打包发布可以参考文档:
https://code.visualstudio.com/api/working-with-extensions/publishing-extension
微软提供了 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 创建,比较直观。
https://marketplace.visualstudio.com/manage
也可以通过 vsce 命令行创建,详见:
https://code.visualstudio.com/api/working-with-extensions/publishing-extension#create-a-publisher
有了 publisher 后就能进行 publish 了,还是在 management page 页面,通过上传.vsix 文件的方式即可,当 vs code 校验通过后就会发布到 Visual Studio Code Marketplace。
publish 同样可以通过 vsce 命令行进行,详见:
https://code.visualstudio.com/api/working-with-extensions/publishing-extension#log-in-to-a-publisher
插件安装完成后还是需要逐一去配置调试的,这个没法自动化,毕竟各人喜好不同,不过大多数插件都是开箱即用的。
作为开源的轻量级通用编辑器,VS Code 的 Java 开发体验确实不如 JetBrains,但和 Eclipse 一样胜在开源免费,所以还是可堪一用的。
这里给大家分享一份Python全套学习资料,包括学习路线、软件、源码、视频、面试题等等,都是我自己学习时整理的,希望可以对正在学习或者想要学习Python的朋友有帮助!
赞
踩
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。