diff --git a/README.md b/README.md index c1679695d..2b2728b2f 100644 --- a/README.md +++ b/README.md @@ -279,8 +279,6 @@ The following settings are supported: - Find Reference - Call Hierarchy - Workspace Symbols -* `java.jdt.ls.javac.enabled`: [Experimental] Specify whether to enable Javac-based compilation in the language server. Requires running this extension with Java 24. Defaults to `off`. -* `java.completion.engine`: [Experimental] Select code completion engine. Defaults to `ecj`. * `java.references.includeDeclarations`: Include declarations when finding references. Defaults to `true` * `java.jdt.ls.appcds.enabled`: [Experimental] Enable Java AppCDS (Application Class Data Sharing) for improvements to extension activation. When set to `auto`, AppCDS will be enabled in Visual Studio Code - Insiders, and for pre-release versions. * `java.hover.javadoc.enabled`: Enable/disable displaying Javadoc on hover. Defaults to `true`. diff --git a/USAGE_DATA.md b/USAGE_DATA.md index 0ec197e7a..bd4a5eb0f 100644 --- a/USAGE_DATA.md +++ b/USAGE_DATA.md @@ -19,10 +19,10 @@ vscode-java has opt-in telemetry collection, provided by [vscode-redhat-telemetr * Errors relating to running the language server, such as the message & stacktrace * Whether there is a mismatch between the project's requested source level, and the JDK used for the project (e.g. true) * Information about the following settings. In the case of settings that store a well defined value (e.g. path, url or string), we simply collect whether the setting has been set. - * `java.settings.url`, `java.format.settings.url`, `java.quickfix.showAt`, `java.symbols.includeSourceMethodDeclarations`, `java.completion.collapseCompletionItems`, `java.completion.guessMethodArguments`, `java.completion.postfix.enabled`, `java.cleanup.actionsOnSave`, `java.sharedIndexes.enabled`, `java.inlayHints.parameterNames.enabled`, `java.inlayHints.parameterNames.suppressWhenSameNameNumbered`, `java.inlayHints.variableTypes.enabled`, `java.inlayHints.parameterTypes.enabled`, `java.server.launchMode`, `java.autobuild.enabled`, `java.jdt.ls.javac.enabled` + * `java.settings.url`, `java.format.settings.url`, `java.quickfix.showAt`, `java.symbols.includeSourceMethodDeclarations`, `java.completion.collapseCompletionItems`, `java.completion.guessMethodArguments`, `java.completion.postfix.enabled`, `java.cleanup.actionsOnSave`, `java.sharedIndexes.enabled`, `java.inlayHints.parameterNames.enabled`, `java.inlayHints.parameterNames.suppressWhenSameNameNumbered`, `java.inlayHints.variableTypes.enabled`, `java.inlayHints.parameterTypes.enabled`, `java.server.launchMode`, `java.autobuild.enabled` * The extension name and the choice made when a recommendation to install a third-party extension is proposed * The name of Java commands being manually executed, and any resulting errors - * The number of results (e.g. 20), whether an error occurred (e.g. false), engine type (e.g. 'ecj', 'dom') and duration (in milliseconds) when code assist is activated + * The number of results (e.g. 20), whether an error occurred (e.g. false), and duration (in milliseconds) when code assist is activated * Whether the language server ran out of memory and the maximum allocated memory at which that occurred (e.g. 200m) ## What's included in the general telemetry data diff --git a/package.json b/package.json index 398cecf7a..eb6b1361f 100644 --- a/package.json +++ b/package.json @@ -452,17 +452,6 @@ "scope": "window", "order": 90 }, - "java.jdt.ls.javac.enabled": { - "type": "string", - "enum": [ - "on", - "off" - ], - "default": "off", - "markdownDescription": "[Experimental] Specify whether to enable Javac-based compilation in the language server. Requires running this extension with Java 25", - "scope": "window", - "order": 95 - }, "java.jdt.ls.appcds.enabled": { "type": "string", "enum": [ @@ -1094,21 +1083,6 @@ "scope": "window", "order": 10 }, - "java.completion.engine": { - "type": "string", - "default": "ecj", - "description": "[Experimental] Select code completion engine", - "scope": "window", - "enum": [ - "ecj", - "dom" - ], - "markdownEnumDescriptions": [ - "Use ECJ-based code completion engine (default)", - "Use (highly experimental) JDT DOM-based code completion engine (requires `java.jdt.ls.javac.enabled` to be `on`)" - ], - "order": 1000 - }, "java.completion.postfix.enabled": { "type": "boolean", "default": true, diff --git a/src/extension.ts b/src/extension.ts index 67fa4d4fb..daa1a0a9e 100644 --- a/src/extension.ts +++ b/src/extension.ts @@ -1318,7 +1318,6 @@ export function registerCodeCompletionTelemetryListener() { resultLength: traceEvent.resultLength || 0, error: !!traceEvent.error, fromSyntaxServer: !!traceEvent.fromSyntaxServer, - engine: getJavaConfiguration().get('completion.engine'), }; return Telemetry.sendTelemetry(Telemetry.COMPLETION_EVENT, props); } diff --git a/src/javaServerStarter.ts b/src/javaServerStarter.ts index fcfd82bcc..b51bd446d 100644 --- a/src/javaServerStarter.ts +++ b/src/javaServerStarter.ts @@ -172,61 +172,6 @@ function prepareParams(requirements: RequirementsData, workspacePath, context: E 'java.base/sun.nio.fs=ALL-UNNAMED' ); - const javacEnabled = 'on' === getJavaConfiguration().get('jdt.ls.javac.enabled'); - if (javacEnabled) { - // Javac flags - params.push( - '--add-opens', - 'jdk.compiler/com.sun.tools.javac.main=ALL-UNNAMED', - '--add-opens', - 'jdk.compiler/com.sun.tools.javac.util=ALL-UNNAMED', - '--add-opens', - 'jdk.compiler/com.sun.tools.javac.tree=ALL-UNNAMED', - '--add-opens', - 'jdk.compiler/com.sun.tools.javac.api=ALL-UNNAMED', - '--add-opens', - 'jdk.compiler/com.sun.tools.javac.file=ALL-UNNAMED', - '--add-opens', - 'jdk.compiler/com.sun.tools.javac.parser=ALL-UNNAMED', - '--add-opens', - 'jdk.compiler/com.sun.tools.javac.comp=ALL-UNNAMED', - '--add-opens', - 'jdk.compiler/com.sun.tools.javac.code=ALL-UNNAMED', - '--add-opens', - 'jdk.javadoc/jdk.javadoc.internal.doclets.formats.html.taglets.snippet=ALL-UNNAMED', - '--add-opens', - 'jdk.javadoc/jdk.javadoc.internal.doclets.formats.html.taglets=ALL-UNNAMED', - '--add-opens', - 'jdk.compiler/com.sun.tools.javac.processing=ALL-UNNAMED', - '--add-opens', - 'jdk.compiler/com.sun.tools.javac.jvm=ALL-UNNAMED', - '--add-opens', - 'jdk.compiler/com.sun.tools.javac.model=ALL-UNNAMED', - '--add-opens', - 'jdk.compiler/com.sun.tools.javac.platform=ALL-UNNAMED', - '--add-opens', - 'jdk.compiler/com.sun.tools.javac.resources=ALL-UNNAMED', - '--add-opens', - 'java.base/sun.nio.ch=ALL-UNNAMED', - '--add-opens', - 'jdk.zipfs/jdk.nio.zipfs=ALL-UNNAMED', - '--add-opens', - 'java.compiler/javax.tools=ALL-UNNAMED', - '--add-opens', - 'java.base/java.nio.channels=ALL-UNNAMED', - '-DICompilationUnitResolver=org.eclipse.jdt.core.dom.JavacCompilationUnitResolver', - '-DAbstractImageBuilder.compilerFactory=org.eclipse.jdt.internal.javac.JavacCompilerFactory', - '-DCompilationUnit.DOM_BASED_OPERATIONS=true', - '-DSourceIndexer.DOM_BASED_INDEXER=true', - '-DMatchLocator.DOM_BASED_MATCH=true', - '-DIJavaSearchDelegate=org.eclipse.jdt.internal.core.search.DOMJavaSearchDelegate', - ); - - if('dom' === getJavaConfiguration().get('completion.engine')){ - params.push('-DCompilationUnit.codeComplete.DOM_BASED_OPERATIONS=true'); - }; - } - params.push('-Declipse.application=org.eclipse.jdt.ls.core.id1', '-Dosgi.bundles.defaultStartLevel=4', '-Declipse.product=org.eclipse.jdt.ls.core.product'); diff --git a/src/settings.ts b/src/settings.ts index 1e3330ed2..b6c7cc54a 100644 --- a/src/settings.ts +++ b/src/settings.ts @@ -138,8 +138,6 @@ function hasJavaConfigChanged(oldConfig: WorkspaceConfiguration, newConfig: Work || hasConfigKeyChanged('sharedIndexes.location', oldConfig, newConfig) || hasConfigKeyChanged('transport', oldConfig, newConfig) || hasConfigKeyChanged('diagnostic.filter', oldConfig, newConfig) - || hasConfigKeyChanged('jdt.ls.javac.enabled', oldConfig, newConfig) - || hasConfigKeyChanged('completion.engine', oldConfig, newConfig) || hasConfigKeyChanged('jdt.ls.appcds.enabled', oldConfig, newConfig); } diff --git a/src/utils.ts b/src/utils.ts index 521347708..22188d5b5 100644 --- a/src/utils.ts +++ b/src/utils.ts @@ -251,19 +251,6 @@ export async function getJavaConfig(javaHome: string, skipAutoDetection?: boolea break; } - const javacSupport = javaConfig.jdt.ls.javac.enabled; - switch (javacSupport) { - case "on": - javaConfig.jdt.ls.javac.enabled = true; - break; - case "off": - javaConfig.jdt.ls.javac.enabled = false; - break; - default: - javaConfig.jdt.ls.javac.enabled = false; - break; - } - if (javaConfig.completion.matchCase === "auto") { javaConfig.completion.matchCase = "firstLetter"; }