-
Notifications
You must be signed in to change notification settings - Fork 166
Java Project Manager
microsoft/vscode-java-dependency provides the Java Projects tree and project/library-management UI in VS Code. DependencyExplorer creates the javaProjectExplorer tree with DependencyDataProvider; it also reveals selected resources through the project data returned by the language-server command bridge. This is presentation and extension-side orchestration, not JDTLS project import or dependency resolution.
Referenced-library commands update the java.project.referencedLibraries configuration through Settings; an explicit refresh then invokes the JDTLS-side java.project.refreshLib command for the default workspace folder. A configuration change should therefore not be treated as proof that a server refresh or build-tool resolution succeeded.
LanguageServerApiManager activates redhat.java, observes server readiness and classpath/project-import events, and refreshes or progressively adds tree data as appropriate. The Jdtls namespace sends project, package, path, library-refresh, main-class, dependency, and JAR-generation requests through the Java language client's workspace-command bridge.
The bundled JDTLS extension contributes delegate commands including java.project.list, java.project.refreshLib, java.getPackageData, java.resolvePath, java.project.getMainClasses, and java.project.generateJar, plus a jdt://jarentry/.* content provider. Those handlers run in JDTLS; they are distinct from the VS Code tree renderer.
Verified at source commit 1864fba4d145876808fe557a8dce82e45400e353, merged by PR #1098:
-
src/views/dependencyExplorer.ts(DependencyExplorer) -
src/controllers/libraryController.ts(LibraryController) -
src/languageServerApi/languageServerApiManager.ts(LanguageServerApiManager) -
src/java/jdtls.ts(Jdtls) jdtls.ext/com.microsoft.jdtls.ext.core/plugin.xml