├── .gitattributes ├── .gitignore ├── .vscode └── launch.json ├── .vscodeignore ├── CHANGELOG.md ├── LICENSE ├── README.md ├── extension-icon.png ├── package.json └── vsc-extension-quickstart.md /.gitattributes: -------------------------------------------------------------------------------- 1 | # Set default behavior to automatically normalize line endings. 2 | * text=auto 3 | 4 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | *.vsix 3 | -------------------------------------------------------------------------------- /.vscode/launch.json: -------------------------------------------------------------------------------- 1 | // A launch configuration that launches the extension inside a new window 2 | // Use IntelliSense to learn about possible attributes. 3 | // Hover to view descriptions of existing attributes. 4 | // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387 5 | { 6 | "version": "0.2.0", 7 | "configurations": [ 8 | { 9 | "name": "Extension", 10 | "type": "extensionHost", 11 | "request": "launch", 12 | "args": [ 13 | "--extensionDevelopmentPath=${workspaceFolder}" 14 | ] 15 | } 16 | ] 17 | } -------------------------------------------------------------------------------- /.vscodeignore: -------------------------------------------------------------------------------- 1 | .vscode/** 2 | .vscode-test/** 3 | .gitignore 4 | vsc-extension-quickstart.md 5 | -------------------------------------------------------------------------------- /CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # Change Log 2 | 3 | ## [1.0] 4 | 满足Java开发的基本需求 5 | - 文档编写 6 | - 工程管理 7 | - 版本控制 8 | - UML设计 9 | - Java语言支持 10 | - 单元测试框架支持 11 | - 常用应用框架Spring、Lombok、Mybatis支持 12 | - Maven、Gradle支持 13 | - Servlet Web容器支持 14 | - 代码静态扫描 15 | - 关系型数据库支持 16 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2020 zhanghan 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Java Dev Tools Pack 2 | Java开发常用的VS Code扩展集合。 3 | 4 | ## 已包含扩展集合 5 | 列表以[extension displayName]()`extension identifier`描述的形式排列。 6 | > identifier由publisher.extensionName组成。 7 | 8 | ### General 9 | 10 | * [Material Icon Theme](https://marketplace.visualstudio.com/items?itemName=PKief.material-icon-theme) `PKief.material-icon-theme` Material Design风格的图标集 11 | * [XML Tools](https://marketplace.visualstudio.com/items?itemName=DotJoshJohnson.xml) `DotJoshJohnson.xml` XML Formatting, XQuery, and XPath Tools for Visual Studio Code 12 | * [YAML](https://marketplace.visualstudio.com/items?itemName=redhat.vscode-yaml) `redhat.vscode-yaml` Red Hat出品的YAML语言支持扩展 13 | * [Properties To Yaml](https://marketplace.visualstudio.com/items?itemName=tanaka-x.prop2yaml) `tanaka-x.prop2yaml` Convert properties to yaml 14 | * [Markdown Preview Enhanced](https://marketplace.visualstudio.com/items?itemName=shd101wyy.markdown-preview-enhanced) `shd101wyy.markdown-preview-enhanced` 强大的Markdown扩展,支持实时预览、plantUML/mermaid渲染、PDF导出、TOC自动生成等功能 15 | * [AsciiDoc](https://marketplace.visualstudio.com/items?itemName=asciidoctor.asciidoctor-vscode) `asciidoctor.asciidoctor-vscode` 支持asciidoc语法高亮、实时预览、PDF导出等功能 16 | * [PlantUML](https://marketplace.visualstudio.com/items?itemName=jebbs.plantuml) `jebbs.plantuml` 提供PlantUML支持 17 | * [Prettier](https://marketplace.visualstudio.com/items?itemName=esbenp.prettier-vscode) `esbenp.prettier-vscode` 通过将代码转成AST然后进行格式化,该扩展只是提供了一个顶层抽象,针对不同的语言有不同的底层实现 18 | * [Beautify](https://marketplace.visualstudio.com/items?itemName=HookyQR.beautify) `HookyQR.beautify` 提供js、json、css、html格式化功能 19 | * [Todo Tree](https://marketplace.visualstudio.com/items?itemName=Gruntfuggly.todo-tree) `Gruntfuggly.todo-tree` 支持`TODO`和`FIXME`的语法高亮,同时提供一个Tree View展示workspace中的所有TODO 20 | * [Settings Sync](https://marketplace.visualstudio.com/items?itemName=Shan.code-settings-sync) `Shan.code-settings-sync` 将vs code配置同步到github 21 | 22 | ### SCM 23 | * [GitLens](https://marketplace.visualstudio.com/items?itemName=eamodio.gitlens) `eamodio.gitlens` VS Code上最流行的Git扩展,支持Git Blame、Git Hisotry、Branch等所有需要的功能除了git log graph 24 | * [Git History](https://marketplace.visualstudio.com/items?itemName=donjayamanne.githistory) `donjayamanne.githistory` 提供git log view、compare、brach、tag、merge、rabase等功能,相较GitLens缺少了blame功能,但是提供了Git Log Graph 25 | * [Project Manager](https://marketplace.visualstudio.com/items?itemName=alefragnani.project-manager) `alefragnani.project-manager` 提供Project管理视图,支持workspace概念 26 | * [gitignore](https://marketplace.visualstudio.com/items?itemName=codezombiech.gitignore) `codezombiech.gitignore` 支持`.gitignore`文件,同时支持从[github/gitignore](https://github.com/github/gitignore)仓库下载模板。 27 | 28 | ### Java Lang 29 | 30 | * [Language Support for Java(TM) by Red Hat](https://marketplace.visualstudio.com/items?itemName=redhat.java) `redhat.java` Red Hat官方出品的Java语言支持扩展,底层的语言服务器是Eclipse JDT Language Server 31 | * [Debugger for Java](https://marketplace.visualstudio.com/items?itemName=vscjava.vscode-java-debug) `vscjava.vscode-java-debug` Microsoft官方出品的Java Debug Server,是基于Red Hat的Java Language Support扩展的扩展 32 | * [Java Test Runner](https://marketplace.visualstudio.com/items?itemName=vscjava.vscode-java-test) `vscjava.vscode-java-test` Microsoft官方出品的Java单元测试扩展,支持Junit4.x、Junit5.x以及TestNG 33 | * [Maven for Java](https://marketplace.visualstudio.com/items?itemName=vscjava.vscode-maven) `vscjava.vscode-maven` Microsoft官方出品的Maven扩展,支持POM文件编辑、Maven Plugin Goals运行等功能 34 | * [Project Manager for Java](https://marketplace.visualstudio.com/items?itemName=vscjava.vscode-java-dependency) `vscjava.vscode-java-dependency` Microsoft官方出品的Java Project View扩展,提供了class快速创建、Jar包导出、依赖管理等功能 35 | * [Visual Studio IntelliCode](https://marketplace.visualstudio.com/items?itemName=VisualStudioExptTeam.vscodeintellicode) `VisualStudioExptTeam.vscodeintellicode` Microsoft官方出品的代码智能提示扩展 36 | * [Java IDE](https://marketplace.visualstudio.com/items?itemName=YouMayCallMeV.vscode-java-saber) `YouMayCallMeV.vscode-java-saber` 提供部分类似Eclipse和IDEA的功能,例如创建文件、生成Getter Setter、生成Java Doc等 37 | * [Java Decompiler](https://marketplace.visualstudio.com/items?itemName=dgileadi.java-decompiler) `dgileadi.java-decompiler` Java `.class`文件反编译扩展,依赖Language Support for Java(TM) by Red Hat扩展 38 | * [Lombok Annotations Support for VS Code](https://marketplace.visualstudio.com/items?itemName=GabrielBB.vscode-lombok) `GabrielBB.vscode-lombok` 提供Lombok框架支持 39 | * [Java Code Generators](https://marketplace.visualstudio.com/items?itemName=sohibe.java-generate-setters-getters) `sohibe.java-generate-setters-getters` 自动生成Getter、Setter、ToString、Equals And Hashcode、Constructor方法 40 | * [vsc-mybatis](https://marketplace.visualstudio.com/items?itemName=niko.vsc-mybatis) `niko.vsc-mybatis` 支持Myabtis Mapper在Java文件和XML文件之间来回跳转 41 | * [Gradle Language Support](https://marketplace.visualstudio.com/items?itemName=naco-siren.gradle-language) `naco-siren.gradle-language` 支持gradle文件语法高亮、智能提示 42 | * [Gradle Tasks](https://marketplace.visualstudio.com/items?itemName=richardwillis.vscode-gradle) `richardwillis.vscode-gradle` grale task 运行管理 43 | 44 | ### Spring Support 45 | * [Spring Boot Tools](https://marketplace.visualstudio.com/items?itemName=Pivotal.vscode-spring-boot) `Pivotal.vscode-spring-boot` Pivotal官方出品的Spring应用程序扩展,提供对Spring Application开发的一系列支持,包含Spring注解支持、`.properties`、`.yml`文件格式高亮等 46 | * [Spring Initializr Java Support](https://marketplace.visualstudio.com/items?itemName=vscjava.vscode-spring-initializr) `vscjava.vscode-spring-initializr` Microsoft官方出品的[https://start.spring.io/](https://start.spring.io/)扩展,免去浏览器访问 47 | * [Spring Boot Dashboard](https://marketplace.visualstudio.com/items?itemName=vscjava.vscode-spring-boot-dashboard) `vscjava.vscode-spring-boot-dashboard` Microsoft官方出品的Spring Boot应用程序启动入口管理界面扩展,支持Spring Boot应用程序快速启停以及Debug功能 48 | 49 | ### Servlet Support 50 | * [Tomcat for Java](https://marketplace.visualstudio.com/items?itemName=adashen.vscode-tomcat) `adashen.vscode-tomcat` Tomcat Server管理界面,支持快速启停、debug等功能 51 | * [Jetty for Java](https://marketplace.visualstudio.com/items?itemName=summersun.vscode-jetty) `summersun.vscode-jetty` Jetty Server管理界面,支持快速启停、debug等功能 52 | 53 | ### Linter 54 | 55 | * [SonarLint](https://marketplace.visualstudio.com/items?itemName=SonarSource.sonarlint-vscode) `SonarSource.sonarlint-vscode` Sonar代码静态扫描扩展 56 | * [Java P3C Checker](https://marketplace.visualstudio.com/items?itemName=Rectcircle.vscode-p3c) `Rectcircle.vscode-p3c` 阿里巴巴Java编程规范 (P3C/阿里巴巴Java开发手册) 规约检查 57 | 58 | ### Datebase 59 | * [SQLTools](https://marketplace.visualstudio.com/items?itemName=mtxr.sqltools) `mtxr.sqltools` SQL runner、Connection Expoler等功能 60 | 61 | 62 | ## 未包含扩展集合 63 | 64 | ### 谨慎使用扩展集合 65 | 该列表中的是一些有缺陷(已不维护/很久未更新/功能不完善/某些功能有bug)的扩展,但是目前也没有能匹配的替代品,请在评估风险后使用。 66 | * [Java Server Pages (JSP)](https://marketplace.visualstudio.com/items?itemName=pthorsson.vscode-jsp) `pthorsson.vscode-jsp` 提供JSP语法支持 67 | > 注意:该扩展已处于未维护状态。 68 | * [Java Properties](https://marketplace.visualstudio.com/items?itemName=ithildir.java-properties) `ithildir.java-properties` 提供`.properties`文件语法高亮 69 | * [redis explorer](https://marketplace.visualstudio.com/items?itemName=Pool.redisexplorer) `Pool.redisexplorer` VS Code目前唯一支持cluster的redis扩展,但是修改list、set、hash这些数据结构时有缺陷 70 | 71 | 72 | ## 参考Extension Pack 73 | * [Java Extension Pack](https://marketplace.visualstudio.com/items?itemName=vscjava.vscode-java-pack) 74 | * [Java Development Extensions Pack](https://marketplace.visualstudio.com/items?itemName=ricardo-emerson.java-development-extensions-pack&ssr=false) 75 | * [Java Server Extension Pack](https://marketplace.visualstudio.com/items?itemName=SummerSun.vscode-java-server-pack) 76 | * [Spring Boot Extension Pack](https://marketplace.visualstudio.com/items?itemName=Pivotal.vscode-boot-dev-pack) 77 | * [Git Extension Pack](https://marketplace.visualstudio.com/items?itemName=donjayamanne.git-extension-pack) 78 | * [Gradle Extension Pack](https://marketplace.visualstudio.com/items?itemName=richardwillis.vscode-gradle-extension-pack) 79 | 80 | ## License 81 | This project is available under MIT License. See [LICENSE](LICENSE). -------------------------------------------------------------------------------- /extension-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/larva-zhang/vscode-java-dev-tools-pack/33928569b212731d85c53ac86acaf1422d0ee0ec/extension-icon.png -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "vscode-java-dev-tools-pack", 3 | "displayName": "Java Dev Tools Pack", 4 | "description": "Some Java develop support tools extension pack.", 5 | "publisher": "larva-zhang", 6 | "version": "1.0.0", 7 | "license": "SEE LICENSE IN LICENSE", 8 | "icon": "extension-icon.png", 9 | "engines": { 10 | "vscode": "^1.49.0" 11 | }, 12 | "keywords": [ 13 | "Java", "Spring", "Servlet" 14 | ], 15 | "categories": [ 16 | "Extension Packs" 17 | ], 18 | "homepage": "https://github.com/larva-zhang/vscode-java-dev-tools-pack/blob/master/README.md", 19 | "bugs": { 20 | "url": "https://github.com/larva-zhang/vscode-java-dev-tools-pack/issues", 21 | "email": "zhanghan0031@m163.com" 22 | }, 23 | "repository": { 24 | "type": "git", 25 | "url": "https://github.com/larva-zhang/vscode-java-dev-tools-pack.git" 26 | }, 27 | "extensionPack": [ 28 | "PKief.material-icon-theme", 29 | "DotJoshJohnson.xml", 30 | "redhat.vscode-yaml", 31 | "tanaka-x.prop2yaml", 32 | "shd101wyy.markdown-preview-enhanced", 33 | "asciidoctor.asciidoctor-vscode", 34 | "jebbs.plantuml", 35 | "esbenp.prettier-vscode", 36 | "HookyQR.beautify", 37 | "Gruntfuggly.todo-tree", 38 | "Shan.code-settings-sync", 39 | "eamodio.gitlens", 40 | "donjayamanne.githistory", 41 | "alefragnani.project-manager", 42 | "codezombiech.gitignore", 43 | "redhat.java", 44 | "vscjava.vscode-java-debug", 45 | "vscjava.vscode-java-test", 46 | "vscjava.vscode-maven", 47 | "vscjava.vscode-java-dependency", 48 | "VisualStudioExptTeam.vscodeintellicode", 49 | "YouMayCallMeV.vscode-java-saber", 50 | "dgileadi.java-decompiler", 51 | "GabrielBB.vscode-lombok", 52 | "sohibe.java-generate-setters-getters", 53 | "niko.vsc-mybatis", 54 | "naco-siren.gradle-language", 55 | "richardwillis.vscode-gradle", 56 | "Pivotal.vscode-spring-boot", 57 | "vscjava.vscode-spring-initializr", 58 | "vscjava.vscode-spring-boot-dashboard", 59 | "adashen.vscode-tomcat", 60 | "summersun.vscode-jetty", 61 | "SonarSource.sonarlint-vscode", 62 | "Rectcircle.vscode-p3c", 63 | "mtxr.sqltools" 64 | ] 65 | } -------------------------------------------------------------------------------- /vsc-extension-quickstart.md: -------------------------------------------------------------------------------- 1 | # Welcome to your VS Code Extension Pack 2 | 3 | ## What's in the folder 4 | 5 | * This folder contains all of the files necessary for your extension pack. 6 | * `package.json` - this is the manifest file that defines the list of extensions of the extension pack. 7 | 8 | ## Get up and running straight away 9 | 10 | * Press `F5` to open a new window with your extension loaded. 11 | * Open `Extensions Viewlet` and check your extensions are installed. 12 | 13 | ## Make changes 14 | 15 | * You can relaunch the extension from the debug toolbar after making changes to the files listed above. 16 | * You can also reload (`Ctrl+R` or `Cmd+R` on Mac) the VS Code window with your extension to load your changes. 17 | 18 | ## Install your extension 19 | 20 | * To start using your extension with Visual Studio Code copy it into the `/.vscode/extensions` folder and restart Code. 21 | * To share your extension with the world, read on https://code.visualstudio.com/docs about publishing an extension. 22 | --------------------------------------------------------------------------------