Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

grails-core: package grails-context.xsd in the jar so <grails:component-scan> can be schema-validated

Aperta Adatta ai principianti
#16,635 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

I maintainer di solito rispondono entro 1 giorno

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
2/5
Tempo stimato
1-3 ore
Idoneità per principianti
74/100
Tipo di issue
Bug
Chiarezza
Specificata chiaramente
Stato di attività
Attiva
Stack tecnologico
groovy
Ambito
build-system

Direzione di ricerca

Inizia dal file XSD in grails-core/src/main/groovy/org/grails/spring/context/annotation/grails-context.xsd e dalla mappatura in META-INF/spring.schemas, poi controlla la configurazione processResources della build di grails-core. Compila il jar e verifica che l'XSD sia presente accanto a spring.schemas. È completato quando il jar contiene lo schema e una spec che analizza grails:component-scan riesce a validarlo con la validazione dello schema attiva.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

META-INF/spring.schemas maps http://grails.org/schema/context/grails-context.xsd to org/grails/spring/context/annotation/grails-context.xsd, but that file lives under grails-core/src/main/groovy, which the build does not treat as a resource directory.

The XSD is therefore missing from the published grails-core jar (checked grails-core-8.1.0-SNAPSHOT.jar: only spring.schemas is there). An XSD-validating parse of <grails:component-scan> cannot resolve its schema locally and Xerces falls back to fetching http://grails.org/schema/context/grails-context.xsd over the network.

The same is true on 8.0.x and 9.0.x, so this is not caused by the Java-to-Groovy conversion.

Packaging the XSD, for example with

processResources {
    from('src/main/groovy') { include '**/*.xsd' }
}

fixes it. Specs that parse <grails:component-scan> could then turn schema validation back on.

Found in review of #16586.

Lingua principale
Groovy
Stelle
2.9k
Fork
976
Merge medio
20h 13m
PR unite (30g)
168

Preparare l'ambiente

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di apache/grails-core

Tutte le issue di apache/grails-core

Issue simili

Altre issue su Build System

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.