2

我的问题是生成版本 1 UUID。我们使用 Jetty 6.x、Maven(启动 Jetty 等)和Apache Commons ID(从当前时间生成 UUID 版本 1)。

Apache Commons ID需要一个配置文件,该配置文件使用参数告知 JVM,例如“org.apache.commons.id.uuid.config.resource.filename=commons-id-uuid.xml”。我检查了Apache Commons ID代码,它尝试从类路径中查找文件。Jetty 的文档指出 WEB-INF/lib 和 WEB-INF/classes 在类路径中。'commons-id-uuid.xml' 可以在 WEB-INF/classes 目录的根目录下部署的 war 文件中找到,但 Jetty 无法加载它:

Message: java.lang.RuntimeException: 
java.lang.IllegalStateException: commons-id-uuid.xml loaded as system resource is null

Jetty 是使用以下命令启动的:

mvn jetty:run -Dorg.apache.commons.id.uuid.config.resource.filename=commons-id-uuid.xml

知道出了什么问题吗?我们只需要生成 UUID 版本 1 标识符。有什么建议么?

4

1 回答 1

6

至少有 2 个比 apache commons 更好的 UUID 生成库:

不需要 xml 配置文件。也许考虑其中之一?

于 2010-04-04T16:38:11.710 回答