redhat-developer / redhat-developer/vscode-java

maven extension support

Abierto
#3,704 0 comentarios 1 reacción 0 asignados Ver en GitHub

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

I'm experimenting with using this polyglot maven extension to convert my projects' pom.xml files into other languages (in particular pom.yaml or pom.kts). Maven seems to work just fine with it, but java language server doesn't seem to pick up either the maven extension or the non-xml pom file.

Is there some way to configure the language server to recognize the maven extension and/or the non-xml pom file, or is there a change that needs to be made to the vscode extension itself to pick things up?

Environment
  • Operating System: Mac 14.5
  • JDK version: 17
  • Visual Studio Code version: VSCodium 1.88.1
  • Java extension version: 1.32.0
Steps To Reproduce
  1. clone https://github.com/takari/polyglot-maven-examples and open that in vscode with the java language server
  2. add another dependency, e.g. guava collections compile("com.google.guava:guava:31.1-jre") to kotlin/pom.kts > dependencies
  3. open Main.kts, add a line for "import com.google.common.collect.Lists" and in the main function call "Lists.newArrayList(1, 2, 3)"
  4. Run "mvn install" to compile the project

Please attach logs

Current Result

because of the extension registered in the project's .mvn/extensions.xml, maven handles the alternative pom file just fine; however, vscode shows red underlines on the google import with an error about an unresolved reference; implying that the language server failed to recognize the added dependency on guava.

Expected Result

the language server recognizes the maven extension and uses it to parse and process the non-xml pom file. (completion support within the pom file a bonus)

Additional Informations

Guía de contribución

Abrir la guía de contribución

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Línea de trabajo

Reproduce el problema con takari/polyglot-maven-examples, centrándote en .mvn/extensions.xml, kotlin/pom.kts y Main.kts. Empieza rastreando cómo el Java language server importa proyectos de Maven y gestiona archivos POM que no son XML; se considera terminado cuando la dependencia de Guava añadida se resuelve en Main.kts y se procesa el POM alternativo.

Escrito por el modelo de indexación a partir del texto del issue.

Evaluación

Stack tecnológico
java
Área
build-system, devtools, tooling
Tipo de issue
Nueva funcionalidad
Dificultad
4/5
Tiempo estimado
3-5 días
Estado de actividad
Estancado
Claridad
Bastante claro
Aptitud para principiantes
30/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.