为依赖模型的 Play 项目指定 Moxy 运行时

Specifying Moxy runtime for Play project with model in dependency

我正在开发一个 Play Framework 项目 (WebProject),我在其中使用 jaxb/Moxy 在通过 SBT 导入的 jar 中定义的模型。这个 jar 是从另一个项目 (ModelProject) 创建的,方法是将 "jaxb.properties" 文件添加到包含模型 classes 的包中: javax.xml.bind.context.factory=org.eclipse.persistence.jaxb.JAXBContextFactory

为了使它在 ModelProject 中的单元测试中起作用,我必须将以下行添加到 build.sbt 文件中: resourceDirectory in Compile <<= baseDirectory { _ / "src" }

我的问题是:当我在 WebProject 中创建 JAXBContext 时,有没有一种方法可以使用 Moxy 运行时,使用从 ModelProject 到 bootstrap 的 class?理想情况下,我想在 ModelProject 中指定它,因为它将来会被其他项目使用。

谢谢。

也许不是一个理想的解决方案,但我只是决定在 WebProject 中创建一个包,其中包含一个 "MoxyBootstrapper" class 和一个包含 javax.xml.bind.context.factory=org.eclipse.persistence.jaxb.JAXBContextFactory 行的 jaxb.properties 文件。

然后我在创建 JAXBContext 的新实例时传递这个 class。