Pierwszy projekt na podstawie schematu XML Schema generuje klasy.

  1. Stwórz nowy projekt korzystając z kreatora Maven2 -> maven-archetype-quickstart. Ustaw:
    • GroupId: pl.perpan
    • ArtifactId: jaxb
    • Version: 1.0
  2. Przełącz zakładkę z Projects na Files
  3. W jaxb/src/main stwórz katalog resources i stwórz nowy pusty plik jaxb/src/main/resources/fs.xsd
  4. Wklej do jaxb/src/main/resources/fs.xsd zawartość pliku fs.xsd
  5. Dodaj nową zależność do projektu (prawy klik na Dependencies i Add Dependency)
    • GroupId: com.sun.xml.bind
    • ArtifactId: jaxb-impl
    • Version: 2.0.2
  6. Z pliku pom.xml skopiuj do test/pom.xml elementy:
    • repositories
    • pluginRepositories
    • build
  7. Uruchom generate-sources(klikając na węzeł projektu) z menu Run lifecycle phase (w katalogu target/generated-sources zostaną wygenerowane klasy ze schematu)
  8. Uruchom install z menu Run lifecycle phase

Drugi projekt korzysta z klas wygenerowanych w projekcie pierwszym.

  1. Stwórz nowy projekt korzystając z kreatora Maven2 -> maven-archetype-quickstart. Ustaw:
    • GroupId: pl.perpan
    • ArtifactId: test
  2. Dodaj nową zależność do projektu (prawy klik na Dependencies i Add Dependency)
    • GroupId: pl.perpan
    • ArtifactId: jaxb
    • Version: 1.0
  3. W pliku jaxb/pom.xml zmień w dependencies/dependency wersję z "1.0" na "[1.0,)" (linia ~7)
  4. Pobierz biblioteki (prawy klik na Dependencies i Download Dependencies)
  5. Skopiuj zawartość pliku App.java do pliku test/src/main/java/pl/perpan/test/App.java
  6. Z pliku pom.xml skopiuj do test/pom.xml element build.
  7. Uruchom assembly:assembly z menu Run custom goals (utworzony zostanie plik jar zawierający wszystkie zależności)
  8. Uruchom konsolę i przejdź do katalogu test/target, następnie wykonaj polecenia:
    		# java -jar test-1.0-SNAPSHOT-jar-with-dependencies.jar 
    		# java -jar test-1.0-SNAPSHOT-jar-with-dependencies.jar 
    		# java -jar test-1.0-SNAPSHOT-jar-with-dependencies.jar nastepny
    				
  9. W pliku jaxb/src/main/resources/fs.xsd z definicji typu FSObject usuń atrybut name (linia ~29)
  10. W pliku jaxb/pom.xml zmień wersję z 1.0 na 1.1 (linia ~7)
  11. Uruchom install z menu Run lifecycle phase dla projektu jaxb
  12. Uruchom assembly:assembly z menu Run lifecycle phase dla projektu test
  13. Uruchom konsolę i przejdź do katalogu test/target, następnie wykonaj polecenie:
    		# java -jar test-1.0-SNAPSHOT-jar-with-dependencies.jar