Mam maven projektu A z /xsd/a.xsd w jego classpath. Mam również projekt B z plikiem /xsd/b.xsd, który odwołuje się do /xsd/a.xsd poprzez wpis w katalogu. Wpis Katalog wygląda następująco:Edycja XSD zaimportowanych schematów z zależności w Eclipse
PUBLIC "http://foo.org/a" "maven:org.foo:a:jar::!/xsd/a.xsd"
Uwaga protokół Maven w adresie URL. Katalog jest używany przez wtyczkę org.jvnet.jaxb2.maven2: maven-jaxb22 do generowania przypisanych do JAXB klas Java z odcinkami zależności.
Wszystko do tej pory dobre.
Teraz chciałbym edytować /xsd/b.xsd w Eclipse. Eclipse zgłosić ostrzeżenie na:
<xsd:import namespace="http://foo.org/a" />
ponieważ nie może znaleźć /xsd/a.xsd bez atrybutu schemaLocation. Eclipse nie rozpoznaje zdefiniowanej powyżej pozycji katalogu.
Obejście znaleźć to dodać wpis do katalogu w Eclipse/okna/Preferencje/XML/XML katalogowy:
PUBLIC "http://foo.org/a" "jar:file:/home/alain/maven/repository/org/foo/a/1.0-SNAPSHOT/a-1.0-SNAPSHOT.jar!/xsd/a.xsd"
Uwaga odniesienie do mojego lokalnym repozytorium (Maven jest link do .m2) oraz konkretna wersja zależnego projektu.
Ktoś, kto spotkał się z tym problemem i znalazł lepsze rozwiązanie?
Wobec tego samego problemu, ale nie znaleziono lepszego rozwiązania tego problemu. Również jest to PITA, którego nie można nawet wskazać bezpośrednio do katalogu '.m2' z powodu kropki. – eis