无法为jaxb/moxy库代码创建jar文件并定位主类文件

7qhs6swi  于 2021-09-29  发布在  Java
关注(0)|答案(0)|浏览(276)

对许多人来说,这似乎是一个简单的问题,但我在这里找不到任何类似的问题,所以我发布了相同的帖子。真的很抱歉,如果发现一个重复的。
我正在使用 Moxy 在我的应用程序中,我发现了一个bug。我试图直接更改代码,但我得到了错误 class file is read only 所以我想修复源代码上的bug并使用 JAR 根据此固定代码创建,用作 dependency 在我的 Maven 项目但我遇到了各种各样的问题。
起初,我从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并将其作为依赖项在我的项目中使用。
我有几件事需要澄清:
我想知道我是否遵循了正确的方法?
如果我没有对另一个文件进行任何更改,为什么在我没有对其他内容进行任何更改的情况下会遇到这么多问题?
源代码有许多子模块,我想知道如何定位 Main.class 文件或作为代码第一个入口点的任何文件。
我是否遗漏了什么,或者是否有比这里提到的步骤或流程更好的解决方法?
寻找一些建议或帮助。提前谢谢。

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题