You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Previously, the files were generated with local versions of Trang/Maven.
It was causing to drown actual changes in cosmetic differences.
This patch replaces all the prerequisites with just Docker Compose,
and allows to regenerate files with the same versions for everyone.
It stores Bash history and Maven cache in local files for convenience.
It refers to MB Solr for making it available through Maven locally,
as we don’t publish this binding in Maven central repository anyway.
These are the instructions for recreating JAXB classes whenever the MMD RelaxNG definition is modified. Its a semi-automated process, there is no coding required
2
-
but there are a couple of manual steps.
1
+
The MusicBrainz XML Metadata Schema Java Binding
2
+
------------------------------------------------
3
3
4
-
1. Ensure Trang installed (linux ubuntu apt-get install trang, or available from http://www.thaiopensource.com/relaxng/trang.html)
4
+
This directory contains the official Java binding (JAXB)
5
+
for the MusicBrainz XML Metadata (MMD) schema version 2.
5
6
6
-
2. Convert rng to xsd
7
-
3. Amend the XSD schema
8
-
4. Generate java classes from xsd
9
-
5. Amend the Java classes
10
-
Ignore files with timestamp change only
11
-
../utils/regenerate-jaxb-files
7
+
Most of the files are generated by a script.
12
8
13
-
6. Build package and then install locally so visible to search server project
14
-
mvn install
9
+
The files can be bundled as a Maven package.
10
+
11
+
== Regenerate files ==
12
+
13
+
Whenever the MMD RELAX NG definition is modified,
14
+
regenerate the XSD schema and the Java classes with:
15
+
16
+
```sh
17
+
docker-compose --project-directory=docker/brainz-mmd2-jaxb run --rm builder
18
+
```
19
+
20
+
== Maven artifact ==
21
+
22
+
See instructions for the repository [`mb-solr`](https://github.com/metabrainz/mb-solr/)
23
+
from which this binding is made accessible through Maven locally for building MB Solr.
0 commit comments