Problem mit Apache Commons Id UUID Version 1 Generation
-
16-09-2019 - |
Frage
Mein Problem ist, Version 1 UUID zu erzeugen. Wir verwenden Jetty 6.x, Maven (Jetty unter anderem zu starten) und Apache Commons ID .
(zu UUID Version 1 von der aktuellen Zeit zu erzeugen)Apache Commons ID erfordert eine Konfigurationsdatei, die die JVM erzählt wird, eine mit Parameter, zB 'Org.apache.commons.id.uuid.config.resource.filename = commons-id-uuid.xml'. Ich habe die Apache Commons ID Code und es versucht, die Datei aus dem Classpath zu finden. Jetty Dokumentation besagt, dass WEB-INF / lib und WEB-INF / classes sind in der classpath. Die ‚commons-id-uuid.xml‘ von der entfalteten WAR-Datei aus der Wurzel des WEB-INF / classes Verzeichnisses gefunden werden, aber Jetty kann nicht geladen werden:
Message: java.lang.RuntimeException:
java.lang.IllegalStateException: commons-id-uuid.xml loaded as system resource is null
Jetty gestartet wurde mit dem folgenden Befehl:
mvn jetty:run -Dorg.apache.commons.id.uuid.config.resource.filename=commons-id-uuid.xml
Jede Idee, was falsch läuft? Wir müssen nur UUID Version 1 Kennungen erzeugen. Irgendwelche Vorschläge?
Lösung
Es gibt mindestens 2 besser UUID Generation Bibliotheken als Apache Commons ein:
- Java UUID-Generator (JUG)
- UUID 3.1
, die keine XML-Konfigurationsdateien erfordern. Vielleicht sollten Sie eine von ihnen statt?