繁体   English   中英

无法为 JAXB/Moxy 库代码创建 JAR 文件并定位主 class 文件

[英]Unable to create a JAR file for the JAXB/Moxy library code and locating the main class file

对许多人来说,这似乎是一个简单的问题,但我在这里找不到类似的东西,所以发布了相同的内容。 如果发现重复真的很抱歉。

我在我的应用程序中使用了Moxy库,我发现其中有一个错误。 我尝试直接更改代码,但收到错误class file is read only的,因此我想修复源代码上的该错误并使用从该固定代码创建的JAR用作我的Maven项目中的dependency项。 但我遇到了各种问题。

起初,我从 GitHub获得了它的代码,创建了一个新分支,并且只对它进行了一行小改动,如票证中所述 除了这一行代码之外,库代码没有任何改变。

org.eclipse.persistence.internal.oxm.record.UnmarshalRecordImpl 
public XPathNode getNonAttributeXPathNode(String namespaceURI, String localName, String qName, Attributes attributes) {
...
Line 1376
       if(null == resultNode && null == nonPredicateNode) {
          // ANY MAPPING
          //resultNode = xPathNode.getAnyNode();
          resultNode = null;
       }

在此之后,我尝试按照以下答案中提到的步骤创建它的 JAR 文件。 我遇到了各种问题,例如:

1. java: package jakarta.jms is not visible (package jakarta.jms is declared in the unnamed module, but module org.eclipse.persistence.core does not read it)

当我使用IDE建议修复此问题并再次构建时,我收到下一个错误:

2. java: package javax.rmi.CORBA is not visible
  (package javax.rmi.CORBA is declared in the unnamed module, but module org.eclipse.persistence.core does not read it)

这个构建和修复工作持续了一段时间,我修复了所有问题,然后我最终遇到了以下错误:

java: the unnamed module reads package commonj.sdo from both org.eclipse.persistence.sdo and commonj.sdo

所以基本上由于某种原因,我无法创建 JAR 并将其作为依赖项在我的项目中使用。

我有几件事想澄清一下:

  1. 我想知道我是否遵循正确的方法?
  2. 如果我没有对其他文件进行任何更改,为什么我没有对其他文件进行任何更改时会遇到这么多问题?
  3. 源代码有许多子模块,我想知道如何找到Main.class文件或任何作为代码第一个入口点的文件。
  4. 有什么我遗漏的,还是有比这里提到的步骤或流程更好的解决方法?

寻求一些建议或帮助。 提前致谢。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM