Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/maven/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Eclipse java.lang.LinkageError:在JIRA中开发SOAP插件时违反加载程序约束_Eclipse_Maven_Soap_Jira_Otrs - Fatal编程技术网

Eclipse java.lang.LinkageError:在JIRA中开发SOAP插件时违反加载程序约束

Eclipse java.lang.LinkageError:在JIRA中开发SOAP插件时违反加载程序约束,eclipse,maven,soap,jira,otrs,Eclipse,Maven,Soap,Jira,Otrs,我试图在JIRA中实现一个侦听器,它使用SOAP来联系 一个web服务(实际上是OTRS,另一个问题管理系统)。 我选择遵循SimpleListener实现(JIRA Listener) 事件),而不是大西洋事件。 我选择通过插件机制实现它,而不是 将一次性静态类安装到JIRA的类路径中。 (也许这是个错误的决定,我不知道) 注意:我不太了解SOAP、WSDL,也不太了解JIRA的内部结构 (osgi的codehouse)。 我大体上遵循了以下给出的说明: (和后续说明页) 我已经使用Atlas

我试图在JIRA中实现一个侦听器,它使用SOAP来联系 一个web服务(实际上是OTRS,另一个问题管理系统)。 我选择遵循SimpleListener实现(JIRA Listener) 事件),而不是大西洋事件。 我选择通过插件机制实现它,而不是 将一次性静态类安装到JIRA的类路径中。 (也许这是个错误的决定,我不知道)

注意:我不太了解SOAP、WSDL,也不太了解JIRA的内部结构 (osgi的codehouse)。 我大体上遵循了以下给出的说明: (和后续说明页)

我已经使用AtlasCreateJira插件为JIRA创建了一个插件

我(使用org.apache.axis.wsdl.WSDL2Java类)生成了 它被称为Apache的Axis版本1——以命令行模式从 WSDL文件:standardTicketActionsSoap.WSDL) 我添加到插件中的一组Java类,例如:

org/otrs/www/TicketConnector/GenericTicketConnector.java
org/otrs/www/TicketConnector/GenericTicketConnectorLocator.java
org/otrs/www/TicketConnector/GenericTicketConnector_BindingStub.java
org/otrs/www/TicketConnector/GenericTicketConnector_PortType.java
org/otrs/www/TicketConnector/OTRS_Article.java
org/otrs/www/TicketConnector/OTRS_Attachment.java
org/otrs/www/TicketConnector/OTRS_DynamicField.java
org/otrs/www/TicketConnector/OTRS_Error.java
org/otrs/www/TicketConnector/OTRS_PendingTime.java
org/otrs/www/TicketConnector/OTRS_TicketCreate_Ticket.java
org/otrs/www/TicketConnector/OTRS_TicketGetResponse_Article.java
org/otrs/www/TicketConnector/OTRS_TicketGetResponse_Attachment.java
org/otrs/www/TicketConnector/OTRS_TicketGetResponse_Ticket.java
org/otrs/www/TicketConnector/OTRS_TicketSearch_DynamicField.java
org/otrs/www/TicketConnector/OTRS_TicketSearch_TicketFlag.java
org/otrs/www/TicketConnector/OTRS_TicketUpdate_Ticket.java
org/otrs/www/TicketConnector/SessionCreate.java
org/otrs/www/TicketConnector/SessionCreateResponse.java
org/otrs/www/TicketConnector/TicketCreate.java
org/otrs/www/TicketConnector/TicketCreateResponse.java
org/otrs/www/TicketConnector/TicketGet.java
org/otrs/www/TicketConnector/TicketSearch.java
org/otrs/www/TicketConnector/TicketSearchResponse.java
org/otrs/www/TicketConnector/TicketUpdate.java
org/otrs/www/TicketConnector/TicketUpdateResponse.java
我必须根据以下内容手动修改两个生成的类: , 避免“org.xml.sax.SAXException:无效元素”错误

我对这种方法有三个问题,其中第三个是 真正的问题:

a) 使用FastDev或atlas cli“pi”命令刷新时不可用 使用“[INFO]等待命令…”符号工作(如: 在atlassian的答案页面主题:fastdev不会结束处理 但解决方案对我不起作用),我总是需要关闭整个系统 JIRA测试安装并重新启动。这可能是由于一些错误的原因 插件配置,尽管这是一件让人头疼的事,但我暂时可以接受

b) 通过Maven进行的命令行构建(atlas运行或atlas构建)不会 报告任何错误,而使用Eclipse编译项目将失败 与:

项目生成错误:无法解决的生成扩展名:Plugin com.atlassian.maven.plugins:maven jira Plugin:5.0.13或其一个依赖项无法解决:未能在本地存储库中缓存com.atlassian.maven.plugins:maven jira Plugin:jar:5.0.13,在经过central的更新间隔或强制更新之前,不会重新尝试解析

c) 当侦听器被执行时,我得到一个讨厌的消息: java.lang.LinkageError:加载程序约束冲突:解析字段“服务”时,引用类org/apache/axis/client/Stub的类加载程序(org/apache/felix/framework/ModuleImpl$ModuleClassLoader的实例)和字段解析类型的类加载程序(org/apache/catalina/loader/WebappClassLoader的实例),org/apache/catalina/loader/WebappClassLoader对于该类型有不同的类对象 在 org.otrs.www.TicketConnector.genericketconnector\u BindingStub.(genericketconnector\u BindingStub.java:98) 这才是真正的表演

这可能是一个简单的Maven配置问题吗? 谢谢

米歇尔