在MuleSoft.U开发基础知识演练8-1,第39步中,我试图部署该项目,但失败。控制台显示以下错误:
错误2019-04-24 17:02:29,203 [WrapperListener_start_runner] [事件:] org.mule.runtime.module.deployment.impl.internal.application.DefaultMuleApplication:null org.mule.runtime.api.exception.MuleRuntimeException:解析给定文件'implementation.xml'时出现'1'错误。 完整清单: org.xml.sax.SAXParseException; systemId:http://www.mulesoft.org/schema/mule/american-flights-api/current/mule-american-flights-api.xsd; lineNumber:186; columnNumber:50; sch-props-correct.2:模式不能包含两个具有相同名称的全局组件;此架构包含两次“ http://www.mulesoft.org/schema/mule/american-flights-api,java.lang.StringEnumType”。
我试图在设计中心更改枚举类型(然后将其导入到项目中),但是它继续失败(相同的错误)。
我还检查了实现xml中的模式文件,它们是正确数量的模式,并且没有一个被加倍。
当我在任意点交换中将项目连接到api时,问题似乎开始了。但是,该api可以正常运行,我之前已经使用过。
答案 0 :(得分:0)
这不是您项目中的xml配置。这是美式航班api连接器中的xml配置。
将RAML更改为不包含枚举后:
发布更改的raml以通过api设计器进行交换。使用发布以交换按钮。
这将为您的新API版本生成一个新的REST连接器版本。
在Anypoint Studio中,您需要删除American flight api连接器模块。在右侧的“ Mule”面板中,选择模块,右键单击并选择“ Remove module”。
从交易所添加一个新模块,然后选择您的American Flights API连接器的最新版本。在右侧的Mule面板中,单击“在Exchange中搜索”并搜索美式连接器。确保选择最新版本。