首页 > 解决方案 > 使用 MPXJ 在 Python 中将 MPP 文件转换为 MS XML 格式

问题描述

我正在尝试使用 MPXJ 库和 Jpype 将 MPP 文件转换为 MS XML 格式

def convert(inputFile, outputFile):
   reader = ProjectReaderUtility.getProjectReader(inputFile)
   project = ProjectFile()
   project = reader.read(inputFile)
   writer = ProjectWriter
   writer = ProjectWriterUtility.getProjectWriter(outputFile)
   writer.write(project, outputFile)

如果我尝试转换为 json 格式,这很好。但是,总是存在与 xml 文件相关的错误。我收到与 java xml 库相关的错误

java.io.IOException: java.io.IOException: javax.xml.bind.JAXBException: 
Implementation of JAXB-API has not been found on module path or classpath.
 with linked exception:
[java.lang.ClassNotFoundException: com.sun.xml.internal.bind.v2.ContextFactory]

任何人都可以在这个问题上提供帮助。我正在使用带有 jdk-15.0.2 的 Python 3.8

标签: javapythonpython-3.xjpypempxj

解决方案


好吧,这是受 Jon Illes 响应启发的错误依赖。我使用的 jaxb-api 不是正确的依赖项。检查依赖列表后,我了解到所需的正确包是 jaxb-runtime。下载后,脚本工作。

感谢乔恩的迅速反应并指导解决方案


推荐阅读