From b27c2a3abd55171122a7a65381d68c317a5e83e1 Mon Sep 17 00:00:00 2001 From: Achal Talati Date: Thu, 9 Nov 2023 13:42:42 +0530 Subject: [PATCH 01/12] download.jdk command configuration updated to open JDK downloader window even if no folder is open in workspace Signed-off-by: Achal Talati --- vscode/package.json | 3 +++ vscode/src/extension.ts | 5 ++++- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/vscode/package.json b/vscode/package.json index 89e67bb..6f316e4 100644 --- a/vscode/package.json +++ b/vscode/package.json @@ -476,6 +476,9 @@ { "command": "jdk.workspace.newproject" }, + { + "command": "jdk.download.jdk" + }, { "command": "jdk.workspace.compile", "when": "nbJdkReady" diff --git a/vscode/src/extension.ts b/vscode/src/extension.ts index 7a1d190..59c78a6 100644 --- a/vscode/src/extension.ts +++ b/vscode/src/extension.ts @@ -444,6 +444,10 @@ export function activate(context: ExtensionContext): VSNetBeansAPI { throw `Client ${c} doesn't support new project`; } })); + context.subscriptions.push(vscode.commands.registerCommand(COMMAND_PREFIX + ".download.jdk", async () => { + let c : LanguageClient = await client; + openJDKSelectionView(log); + })); context.subscriptions.push(commands.registerCommand(COMMAND_PREFIX + '.workspace.compile', () => wrapCommandWithProgress(COMMAND_PREFIX + '.build.workspace', 'Compiling workspace...', log, true) )); @@ -1107,7 +1111,6 @@ function doActivateWithJDK(specifiedJDK: string | null, context: ExtensionContex } })); ctx.subscriptions.push(vscode.commands.registerCommand(COMMAND_PREFIX + ".select.editor.projects", () => revealActiveEditor())); - ctx.subscriptions.push(vscode.commands.registerCommand(COMMAND_PREFIX + ".download.jdk", () => openJDKSelectionView(log))); // attempt to reveal NOW: if (netbeansConfig.get("revealActiveInProjects")) { From df3a50cb94fcf187f06a70b392fd0da8a9ed46dc Mon Sep 17 00:00:00 2001 From: Achal Talati Date: Fri, 10 Nov 2023 10:08:55 +0530 Subject: [PATCH 02/12] added option for running any java program using right click on the java file Signed-off-by: Achal Talati --- vscode/package.json | 22 +++++++++++++++++++++- 1 file changed, 21 insertions(+), 1 deletion(-) diff --git a/vscode/package.json b/vscode/package.json index 15f04bd..44c37c0 100644 --- a/vscode/package.json +++ b/vscode/package.json @@ -467,6 +467,16 @@ "command": "jdk.java.goto.super.implementation", "when": "nbJdkReady && editorLangId == java && editorTextFocus", "group": "navigation@100" + }, + { + "command": "jdk.project.run", + "when": "nbJdkReady && editorLangId == java && resourceExtname == .java", + "group": "javadebug@1" + }, + { + "command": "jdk.project.debug", + "when": "nbJdkReady && editorLangId == java && resourceExtname == .java", + "group": "javadebug@2" } ], "explorer/context": [ @@ -474,6 +484,16 @@ "command": "jdk.workspace.new", "when": "nbJdkReady && explorerResourceIsFolder", "group": "navigation@3" + }, + { + "command": "jdk.project.run", + "when": "nbJdkReady && resourceExtname == .java", + "group": "javadebug@1" + }, + { + "command": "jdk.project.debug", + "when": "nbJdkReady && resourceExtname == .java", + "group": "javadebug@2" } ], "commandPalette": [ @@ -700,4 +720,4 @@ "jsonc-parser": "3.2.0", "vscode-languageclient": "^8.1.0" } -} +} \ No newline at end of file From 06e3aa6a209979ca1f91c237f2f1c12c7a1ec34a Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat, 11 Nov 2023 15:53:20 +0000 Subject: [PATCH 03/12] Bump axios from 1.5.0 to 1.6.0 in /vscode Bumps [axios](https://github.com/axios/axios) from 1.5.0 to 1.6.0. - [Release notes](https://github.com/axios/axios/releases) - [Changelog](https://github.com/axios/axios/blob/v1.x/CHANGELOG.md) - [Commits](https://github.com/axios/axios/compare/v1.5.0...v1.6.0) --- updated-dependencies: - dependency-name: axios dependency-type: direct:production ... Signed-off-by: dependabot[bot] --- vscode/package-lock.json | 14 +++++++------- vscode/package.json | 2 +- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/vscode/package-lock.json b/vscode/package-lock.json index 02dfb71..c351e1f 100644 --- a/vscode/package-lock.json +++ b/vscode/package-lock.json @@ -11,7 +11,7 @@ "dependencies": { "@vscode/debugadapter": "1.55.1", "@vscode/webview-ui-toolkit": "^1.2.2", - "axios": "^1.5.0", + "axios": "^1.6.0", "jsonc-parser": "3.2.0", "vscode-languageclient": "^8.1.0" }, @@ -567,9 +567,9 @@ "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==" }, "node_modules/axios": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/axios/-/axios-1.5.0.tgz", - "integrity": "sha512-D4DdjDo5CY50Qms0qGQTTw6Q44jl7zRwY7bthds06pUGfChBCTcQs+N743eFWGEd6pRTMd6A+I87aWyFV5wiZQ==", + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.6.0.tgz", + "integrity": "sha512-EZ1DYihju9pwVB+jg67ogm+Tmqc6JmhamRN6I4Zt8DfZu5lbcQGw3ozH9lFejSJgs/ibaef3A9PMXPLeefFGJg==", "dependencies": { "follow-redirects": "^1.15.0", "form-data": "^4.0.0", @@ -2028,9 +2028,9 @@ "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==" }, "axios": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/axios/-/axios-1.5.0.tgz", - "integrity": "sha512-D4DdjDo5CY50Qms0qGQTTw6Q44jl7zRwY7bthds06pUGfChBCTcQs+N743eFWGEd6pRTMd6A+I87aWyFV5wiZQ==", + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.6.0.tgz", + "integrity": "sha512-EZ1DYihju9pwVB+jg67ogm+Tmqc6JmhamRN6I4Zt8DfZu5lbcQGw3ozH9lFejSJgs/ibaef3A9PMXPLeefFGJg==", "requires": { "follow-redirects": "^1.15.0", "form-data": "^4.0.0", diff --git a/vscode/package.json b/vscode/package.json index 15f04bd..1c2b1cf 100644 --- a/vscode/package.json +++ b/vscode/package.json @@ -696,7 +696,7 @@ "dependencies": { "@vscode/debugadapter": "1.55.1", "@vscode/webview-ui-toolkit": "^1.2.2", - "axios": "^1.5.0", + "axios": "^1.6.0", "jsonc-parser": "3.2.0", "vscode-languageclient": "^8.1.0" } From 863d65b66c49d7da66556dcb4d3fcecd22f0ad3a Mon Sep 17 00:00:00 2001 From: Achal Talati Date: Thu, 16 Nov 2023 15:13:30 +0530 Subject: [PATCH 04/12] added checksum match for jdk downloader Signed-off-by: Achal Talati --- vscode/src/jdkDownloader.ts | 27 +++++++++++++++++++++++++-- 1 file changed, 25 insertions(+), 2 deletions(-) diff --git a/vscode/src/jdkDownloader.ts b/vscode/src/jdkDownloader.ts index 5e54f36..9fa891b 100644 --- a/vscode/src/jdkDownloader.ts +++ b/vscode/src/jdkDownloader.ts @@ -21,11 +21,26 @@ import axios from 'axios'; import * as https from 'https'; import * as child_process from 'child_process'; import * as vscode from 'vscode'; +import * as crypto from 'crypto'; import { JDK_RELEASES_TRACK_URL, OPEN_JDK_VERSION_DOWNLOAD_LINKS, ORACLE_JDK_BASE_DOWNLOAD_URL, ORACLE_JDK_VERSION_FALLBACK_DOWNLOAD_VERSIONS } from './constants'; import { handleLog } from './extension'; let customView: vscode.WebviewPanel; let logger: vscode.OutputChannel; + +export const calculateChecksum = (filePath: string) => { + try { + const ALGORITHM = 'sha256'; + const stream = fs.readFileSync(filePath); + const hash = crypto.createHash(ALGORITHM); + hash.update(stream); + const checksum = hash.digest('hex'); + return checksum; + } catch (error) { + throw error; + } +} + export const fetchDropdownOptions = async () => { // Detect OS of the machine @@ -173,8 +188,16 @@ export function JDKDownloader(JDKType: string, osType: string, osArchitecture: s writeStream.on('finish', async () => { vscode.window.showInformationMessage(`${JDKType} ${JDKVersion} for ${osType} download completed!`); - - await extractJDK(path.join(targetDirectory, fileName), installationPath, JDKVersion, osType); + const checkSumObtained = calculateChecksum(filePath); + const checkSumExpected = (await axios.get(`${downloadUrl}.sha256`)).data; + + if (checkSumExpected === checkSumObtained) { + await extractJDK(filePath, installationPath, JDKVersion, osType); + } + else { + handleLog(logger, "Checksums don't match!"); + throw new Error("Something went wrong"); + } }); writeStream.on('error', error => { From f8ab2e3e3abc211ff31385ed956ba192223a663f Mon Sep 17 00:00:00 2001 From: Achal Talati Date: Mon, 27 Nov 2023 21:38:23 +0530 Subject: [PATCH 05/12] fixed bug "cannot find download.jdk" command Signed-off-by: Achal Talati --- vscode/src/extension.ts | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/vscode/src/extension.ts b/vscode/src/extension.ts index 59c78a6..5f7c3b3 100644 --- a/vscode/src/extension.ts +++ b/vscode/src/extension.ts @@ -444,10 +444,7 @@ export function activate(context: ExtensionContext): VSNetBeansAPI { throw `Client ${c} doesn't support new project`; } })); - context.subscriptions.push(vscode.commands.registerCommand(COMMAND_PREFIX + ".download.jdk", async () => { - let c : LanguageClient = await client; - openJDKSelectionView(log); - })); + context.subscriptions.push(vscode.commands.registerCommand(COMMAND_PREFIX + ".download.jdk", async () => { openJDKSelectionView(log); })); context.subscriptions.push(commands.registerCommand(COMMAND_PREFIX + '.workspace.compile', () => wrapCommandWithProgress(COMMAND_PREFIX + '.build.workspace', 'Compiling workspace...', log, true) )); From 1ba8daece78441e93da0aa5cdc97f3bd522c4b2e Mon Sep 17 00:00:00 2001 From: Achal Talati Date: Mon, 27 Nov 2023 22:59:12 +0530 Subject: [PATCH 06/12] added checksum-match in jdk downloader Signed-off-by: Achal Talati --- vscode/src/jdkDownloader.ts | 35 +++++++++++++++++++---------------- 1 file changed, 19 insertions(+), 16 deletions(-) diff --git a/vscode/src/jdkDownloader.ts b/vscode/src/jdkDownloader.ts index 9fa891b..16cd2ba 100644 --- a/vscode/src/jdkDownloader.ts +++ b/vscode/src/jdkDownloader.ts @@ -24,21 +24,24 @@ import * as vscode from 'vscode'; import * as crypto from 'crypto'; import { JDK_RELEASES_TRACK_URL, OPEN_JDK_VERSION_DOWNLOAD_LINKS, ORACLE_JDK_BASE_DOWNLOAD_URL, ORACLE_JDK_VERSION_FALLBACK_DOWNLOAD_VERSIONS } from './constants'; import { handleLog } from './extension'; +import { promisify } from 'util'; let customView: vscode.WebviewPanel; let logger: vscode.OutputChannel; -export const calculateChecksum = (filePath: string) => { - try { - const ALGORITHM = 'sha256'; - const stream = fs.readFileSync(filePath); - const hash = crypto.createHash(ALGORITHM); - hash.update(stream); - const checksum = hash.digest('hex'); - return checksum; - } catch (error) { - throw error; - } +export const calculateChecksum = async (filePath: string): Promise => { + const ALGORITHM = 'sha256'; + const hash = crypto.createHash(ALGORITHM); + const pipeline = promisify(require('stream').pipeline); + const readStream = fs.createReadStream(filePath); + + await pipeline( + readStream, + hash + ); + + const checksum = hash.digest('hex'); + return checksum; } export const fetchDropdownOptions = async () => { @@ -187,16 +190,16 @@ export function JDKDownloader(JDKType: string, osType: string, osArchitecture: s response.pipe(writeStream); writeStream.on('finish', async () => { - vscode.window.showInformationMessage(`${JDKType} ${JDKVersion} for ${osType} download completed!`); - const checkSumObtained = calculateChecksum(filePath); + const checkSumObtained = await calculateChecksum(filePath); const checkSumExpected = (await axios.get(`${downloadUrl}.sha256`)).data; - + if (checkSumExpected === checkSumObtained) { + vscode.window.showInformationMessage(`${JDKType} ${JDKVersion} for ${osType} download completed!`); await extractJDK(filePath, installationPath, JDKVersion, osType); } else { - handleLog(logger, "Checksums don't match!"); - throw new Error("Something went wrong"); + handleLog(logger, `Checksums don't match! \n Expected: ${checkSumExpected} \n Obtained: ${checkSumObtained}`); + vscode.window.showErrorMessage(`"${JDKType} ${JDKVersion} for ${osType} download failed, wrong checksum."`); } }); From da265338dbda628085032eedb62589234df8da59 Mon Sep 17 00:00:00 2001 From: Achal Talati Date: Wed, 29 Nov 2023 14:28:58 +0530 Subject: [PATCH 07/12] added formatter preferences readme Signed-off-by: Achal Talati --- README.md | 7 +++++++ vscode/README.md | 7 +++++++ 2 files changed, 14 insertions(+) diff --git a/README.md b/README.md index 44b19e5..b261516 100644 --- a/README.md +++ b/README.md @@ -121,6 +121,13 @@ Move members refactoring provides dedicated form as well. * Inline redundant variable * Constructor and method argument refactoring +## Formatter Preferences +Easily update default formatter preferences by adjusting a simple configuration option to tailor settings according to specific needs. + +Go to VSCode `View | Command Palette | Preferences:Open User Settings | Extensions | Java` and set `Jdk › Format: Settings Path:` option to the formatter preferences file. + +Please refer to [Java formatting preferences](https://github.com/oracle/javavscode/wiki/Java-formatting-preferences) wiki for more info. + ## Organize Imports Out of the box support for organizing imports in Java sources is available. It removes unused imports, groups imports by packages and updates your imports whenever a file is saved. In addition to the defaults, there is a rich set of configuration options. diff --git a/vscode/README.md b/vscode/README.md index cdbe9b0..eab359f 100644 --- a/vscode/README.md +++ b/vscode/README.md @@ -119,6 +119,13 @@ Move members refactoring provides dedicated form as well. * Inline redundant variable * Constructor and method argument refactoring +## Formatter Preferences +Easily update default formatter preferences by adjusting a simple configuration option to tailor settings according to specific needs. + +Go to VSCode `View | Command Palette | Preferences:Open User Settings | Extensions | Java` and set `Jdk › Format: Settings Path:` option to the formatter preferences file. + +Please refer to [Java formatting preferences](https://github.com/oracle/javavscode/wiki/Java-formatting-preferences) wiki for more info. + ## Organize Imports Out of the box support for organizing imports in Java sources is available. It removes unused imports, groups imports by packages and updates your imports whenever a file is saved. In addition to the defaults, there is a rich set of configuration options. From 44bca22a73ebb4748732aaf30e5fe66a7ea8c8f1 Mon Sep 17 00:00:00 2001 From: Sundararajan Athijegannathan Date: Wed, 29 Nov 2023 18:34:27 +0530 Subject: [PATCH 08/12] added Mac OS specific NetBeans patch application instruction. fixed .gitignore for netbeans folder. Only JDK 11 to JDK 20 can be used for build. JDK 21 cannot be used. --- .gitignore | 4 ++-- BUILD.md | 14 +++++++++++++- 2 files changed, 15 insertions(+), 3 deletions(-) diff --git a/.gitignore b/.gitignore index 90e06c0..a96bb61 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,3 @@ build/ -^netbeans/ -.DS_STORE \ No newline at end of file +netbeans/ +.DS_STORE diff --git a/BUILD.md b/BUILD.md index 55d4434..4af05b8 100644 --- a/BUILD.md +++ b/BUILD.md @@ -27,7 +27,7 @@ ## Prerequisities -- JDK, version 11 or later +- JDK, version 11 or later upto JDK 20 - Ant, latest version - Maven, latest version - node.js, latest LTS (to build VSIX) @@ -40,11 +40,23 @@ $ git clone https://github.com/apache/netbeans.git $ cd netbeans/ $ git checkout f48f91e6c197d8a40bd82fc2f2d12a4e71242afe $ cd .. +# see below for Mac OS specific instruction $ ant apply-patches $ ant build-netbeans ``` +*Note for Mac OS* + +"apply-patches" task does not work properly on Mac OS. On Mac OS, +NetBeans patches can be applied using the following commands: + +```bash +$ cd netbeans/ +$ git apply ../patch/* + +``` + ## Building VS Code extension To build the VS Code extension invoke: From 95cf17efd64576ce895cbcfbb1a54a8ded084b9a Mon Sep 17 00:00:00 2001 From: Sundararajan Athijegannathan Date: Wed, 29 Nov 2023 18:36:54 +0530 Subject: [PATCH 09/12] fixed directory name for netbeans patch diffs ( "patches") --- BUILD.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/BUILD.md b/BUILD.md index 4af05b8..3ff1821 100644 --- a/BUILD.md +++ b/BUILD.md @@ -53,7 +53,7 @@ NetBeans patches can be applied using the following commands: ```bash $ cd netbeans/ -$ git apply ../patch/* +$ git apply ../patches/* ``` From fb90c45b7f6eaee6f6877dcee5dd597ae650277f Mon Sep 17 00:00:00 2001 From: Jan Lahoda Date: Thu, 30 Nov 2023 16:37:03 +0100 Subject: [PATCH 10/12] Making sure tests can be run and pass, on Linux and Mac OS/X --- .github/workflows/main.yml | 9 ++++- BUILD.md | 19 ++------- build.xml | 52 ++++++++++++++++++------- patches/6771.diff | 13 +++++++ vscode/src/test/suite/extension.test.ts | 5 +++ 5 files changed, 69 insertions(+), 29 deletions(-) create mode 100644 patches/6771.diff diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 3a39665..a46c660 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -37,12 +37,13 @@ jobs: # artifact is only produced once in the matrix base-build: name: Base Build - runs-on: ubuntu-latest timeout-minutes: 60 strategy: matrix: java: [ '17' ] + os: [ ubuntu-latest ] fail-fast: false + runs-on: ${{ matrix.os }} steps: - name: Set up JDK ${{ matrix.java }} @@ -71,3 +72,9 @@ jobs: - name: Build the Visual Studio Extension run: ant build-vscode-ext + + - name: Install virtual X server + run: sudo apt install -y xvfb + + - name: Basic tests for the Visual Studio Extension + run: xvfb-run -a ant test-vscode-ext diff --git a/BUILD.md b/BUILD.md index 3ff1821..b9528c3 100644 --- a/BUILD.md +++ b/BUILD.md @@ -40,23 +40,12 @@ $ git clone https://github.com/apache/netbeans.git $ cd netbeans/ $ git checkout f48f91e6c197d8a40bd82fc2f2d12a4e71242afe $ cd .. -# see below for Mac OS specific instruction +# the following target requires git executable to be on PATH: $ ant apply-patches $ ant build-netbeans ``` -*Note for Mac OS* - -"apply-patches" task does not work properly on Mac OS. On Mac OS, -NetBeans patches can be applied using the following commands: - -```bash -$ cd netbeans/ -$ git apply ../patches/* - -``` - ## Building VS Code extension To build the VS Code extension invoke: @@ -97,14 +86,14 @@ that there are VS Code integration tests - those launch VS Code with the VS extension and check behavior of the TypeScript integration code: ```bash -java.lsp.server$ ant build-vscode-ext # first and then -java.lsp.server$ ant test-vscode-ext +$ ant build-vscode-ext # first and then +$ ant test-vscode-ext ``` In case you are behind a proxy, you may want to run the tests with ```bash -java.lsp.server$ npm_config_https_proxy=http://your.proxy.com:port ant test-vscode-ext +$ npm_config_https_proxy=http://your.proxy.com:port ant test-vscode-ext ``` when executing the tests for the first time. That shall overcome the proxy diff --git a/build.xml b/build.xml index 4dc1b35..174c2cb 100644 --- a/build.xml +++ b/build.xml @@ -31,6 +31,7 @@ + @@ -141,7 +142,11 @@ - + + + + + @@ -168,21 +173,42 @@ - - - - - - + + + + + + - - - - - - + + + import java.util.Arrays; + import java.util.Collections; + import java.util.List; + import java.util.stream.Collectors; + public class Reverse { + public static void main(String[] args) { + List<String> patches = Arrays.asList(args[0].split(" ")); + Collections.reverse(patches); + System.out.print(patches.stream().collect(Collectors.joining(" "))); + } + } + + + + + ${reverse.patches} + + + + + + + diff --git a/patches/6771.diff b/patches/6771.diff new file mode 100644 index 0000000..6e543d7 --- /dev/null +++ b/patches/6771.diff @@ -0,0 +1,13 @@ +diff --git a/java/java.lsp.server/src/org/netbeans/modules/java/lsp/server/protocol/SurroundWithHint.java b/java/java.lsp.server/src/org/netbeans/modules/java/lsp/server/protocol/SurroundWithHint.java +index d893783f6995..3f90097b6053 100644 +--- a/java/java.lsp.server/src/org/netbeans/modules/java/lsp/server/protocol/SurroundWithHint.java ++++ b/java/java.lsp.server/src/org/netbeans/modules/java/lsp/server/protocol/SurroundWithHint.java +@@ -80,7 +80,7 @@ + public final class SurroundWithHint extends CodeActionsProvider { + + private static final String COMMAND_INSERT_SNIPPET = "editor.action.insertSnippet"; +- private static final String COMMAND_SURROUND_WITH = "surround.with"; ++ private static final String COMMAND_SURROUND_WITH = "nbls.surround.with"; + private static final String DOTS = "..."; + private static final String SNIPPET = "snippet"; + private static final String SELECTION_VAR = "${selection}"; diff --git a/vscode/src/test/suite/extension.test.ts b/vscode/src/test/suite/extension.test.ts index 50fa02b..6ff8bc1 100644 --- a/vscode/src/test/suite/extension.test.ts +++ b/vscode/src/test/suite/extension.test.ts @@ -167,6 +167,11 @@ suite('Extension Test Suite', function () { if (refactorActions && refactorActions.length > 0) { for await (const action of refactorActions) { if (action.command && action.command.arguments) { + if (action.command.command === myExtension.COMMAND_PREFIX + ".surround.with") { + //this action has a popup where the user needs to + //select a template that should be used for the surround: + continue; + } await commands.executeCommand(action.command.command, ...action.command.arguments); await commands.executeCommand('undo'); } From 7e46980b10aaa3fc0b1a52bd055c9ad3ff74899b Mon Sep 17 00:00:00 2001 From: Achal Talati Date: Fri, 22 Dec 2023 16:38:02 +0530 Subject: [PATCH 11/12] Added more style in readme file --- README.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/README.md b/README.md index b261516..92c8e9d 100644 --- a/README.md +++ b/README.md @@ -23,6 +23,10 @@ # Oracle Java Platform Extension for Visual Studio Code +[![Visual Studio Marketplace](https://img.shields.io/visual-studio-marketplace/v/Oracle.oracle-java?style=for-the-badge&label=VS%20Marketplace&logo=visual-studio-code)](https://marketplace.visualstudio.com/items?itemName=Oracle.oracle-java) +[![Installs](https://img.shields.io/visual-studio-marketplace/i/Oracle.oracle-java?style=for-the-badge)](https://marketplace.visualstudio.com/items?itemName=Oracle.oracle-java) +[![Build Status](https://img.shields.io/github/actions/workflow/status/oracle/javavscode/main.yml?branch=master&style=for-the-badge&logo=github)](https://github.com/oracle/javavscode/actions?query=workflow:Java%20Platform%20Support%20for%20Visual%20Studio%20Code) +[![License](https://img.shields.io/github/license/oracle/javavscode?style=for-the-badge&logo=apache)](https://github.com/oracle/javavscode/blob/master/LICENSE.txt) The Oracle Java Platform extension brings full featured Java development (edit-compile-debug & test cycle) for Maven and Gradle projects to VS Code, and is available on the [Visual Studio Marketplace](https://marketplace.visualstudio.com/items?itemName=Oracle.oracle-java). From 39d7a728c67fa4b099bd18b307f0d64e368bc175 Mon Sep 17 00:00:00 2001 From: Achal Talati Date: Fri, 5 Jan 2024 10:22:07 +0530 Subject: [PATCH 12/12] updated readme Signed-off-by: Achal Talati --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 92c8e9d..b917a75 100644 --- a/README.md +++ b/README.md @@ -25,8 +25,8 @@ # Oracle Java Platform Extension for Visual Studio Code [![Visual Studio Marketplace](https://img.shields.io/visual-studio-marketplace/v/Oracle.oracle-java?style=for-the-badge&label=VS%20Marketplace&logo=visual-studio-code)](https://marketplace.visualstudio.com/items?itemName=Oracle.oracle-java) [![Installs](https://img.shields.io/visual-studio-marketplace/i/Oracle.oracle-java?style=for-the-badge)](https://marketplace.visualstudio.com/items?itemName=Oracle.oracle-java) -[![Build Status](https://img.shields.io/github/actions/workflow/status/oracle/javavscode/main.yml?branch=master&style=for-the-badge&logo=github)](https://github.com/oracle/javavscode/actions?query=workflow:Java%20Platform%20Support%20for%20Visual%20Studio%20Code) -[![License](https://img.shields.io/github/license/oracle/javavscode?style=for-the-badge&logo=apache)](https://github.com/oracle/javavscode/blob/master/LICENSE.txt) +[![Build Status](https://img.shields.io/github/actions/workflow/status/oracle/javavscode/main.yml?branch=main&style=for-the-badge&logo=github)](https://github.com/oracle/javavscode/actions?query=workflow:Java%20Platform%20Support%20for%20Visual%20Studio%20Code) +[![License](https://img.shields.io/github/license/oracle/javavscode?style=for-the-badge&logo=apache)](https://github.com/oracle/javavscode/blob/main/LICENSE.txt) The Oracle Java Platform extension brings full featured Java development (edit-compile-debug & test cycle) for Maven and Gradle projects to VS Code, and is available on the [Visual Studio Marketplace](https://marketplace.visualstudio.com/items?itemName=Oracle.oracle-java).