redhat-developer / redhat-developer/vscode-java
Module configuration support
Nadie ha tomado este issue todavía.
- Lenguaje dominante
- TypeScript
- Estrellas
- 2.3k
- Forks
- 546
- Merge medio
- 20 h 1 min
- PR fusionados (30 d)
- 11
Descripción
Type: Feature Request
Feature Request: Support for Classpath Configuration per Module
Summary
The Read Heat extension currently supports only a single workpsace classpath configuration. This becomes limiting in multi‑module Java projects, where each module may require a different classpath. I would like to propose extending the configuration model to align with the standard VS Code configuration hierarchy: User → Workspace → Module (new).
Problem Description
In complex Java workspaces, especially those containing multiple independent modules, the extension does not allow defining a classpath per module. As a result:
- All modules must share the same classpath, even when they have different dependency sets.
- Workspace‑level configuration cannot be overridden for specific modules.
- The extension becomes difficult to use in real‑world multi‑module setups.
For example, I may have a workspace configured on User level for JDK 21, but a specific workpsace require JDK 1.8 and each module requires a different classpath or additional libraries. Currently, there is no way to express this.
Proposed Solution
Introduce a hierarchical configuration model consistent with VS Code’s philosophy:
- User-level configuration
Global defaults for all workspaces. - Workspace-level configuration
Overrides user settings for the current workspace. - Module-level configuration
A new level of configuration that applies to a specific Java module and can override both workspace and user settings.
This would allow each module to define its own classpath while still inheriting defaults when appropriate.
Expected Behavior
- If a module defines its own classpath, the extension uses that configuration.
- If not, the workspace configuration is used.
- If neither module nor workspace defines a classpath, the user-level configuration applies.
- This mirrors how VS Code handles settings for other languages and extensions.
Benefits
- Better support for multi-module Java projects.
- Cleaner and more maintainable configuration.
- Behavior consistent with VS Code’s established configuration hierarchy.
- Allows mixed JDK environments or module-specific dependency sets.
Extension version: 1.52.0
VS Code version: Code 1.109.4 (c3a26841a84f20dfe0850d0a5a9bd01da4f003ea, 2026-02-16T15:35:57.932Z)
OS version: Windows_NT x64 10.0.26200
Modes:
Guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Línea de trabajo
El issue no especifica archivos de configuración, pruebas ni puntos de entrada de la implementación. Empieza por localizar la gestión de la configuración de la extensión de VS Code y los ajustes existentes de workspace/classpath, y después determina cómo encajarían las sobrescrituras a nivel de módulo en el modelo actual. La tarea terminada debe incluir classpaths específicos por módulo con comportamiento de fallback de workspace y usuario, además de pruebas para las reglas de precedencia.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- java, typescript, vscode
- Área
- tooling
- Tipo de issue
- Nueva funcionalidad
- Dificultad
- 5/5
- Tiempo estimado
- Más de una semana
- Estado de actividad
- Estancado
- Claridad
- Necesita aclaración
- Aptitud para principiantes
- 35/100