这是How to un/marshall underscored XML to/from camelcased Java using JAXB?的后续问题?
我正在尝试使用来自 Scala(sbt 0.10.0)的 Moxy(EclipseLink 的一部分),并且正在努力弄清楚如何导入和使用它。将其分为两部分:
1.导入Moxy
这一次我在mvnrepository.com上找不到任何合适的东西。通过阅读有关 Maven setup 的此页面,我希望以下内容可以工作:
// /project/Dependencies.scala
object Dependencies {
val resolutionRepos = Seq(
ScalaToolsSnapshots,
"EclipseLink Repo" at "http://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/rt/eclipselink/maven.repo"
)
object V {
val moxy = "2.1.0"
}
object Runtime {
// We use Moxy for the naming convention transforms
val moxy = "org.eclipse.persistence" % "javax.eclipselink" % V.moxy
}
但是 sbt 在抱怨module not found: org.eclipse.persistence#javax.eclipselink;2.1.0
2. 指定 Moxy 作为我的 JAXB 提供者
解决了上述问题(感谢 SRI!),下一个问题是我无法将 Moxy 指定为我的 JAXB 提供程序。根据 Blaise Doughan 的这篇文章中的说明,看起来我需要将一个jaxb.properties
包含以下条目的文件放在与我的表示相同的包中:
javax.xml.bind.context.factory=org.eclipse.persistence.jaxb.JAXBContextFactory
但不幸的是,在运行 sbt 时似乎并没有发现这一点。有任何想法吗?
感激地收到任何帮助。祝大家圣诞快乐!