项目与第三访系统集成通信的技术方案中,有一种方式是被集成方提供 Jar 包,Jar 包里提供了调用被集成方(第三方)相关功能的Java类或接口,很多都同时附带一份集成开发文档。
如果第三方在不同时期提供的jar包,相互存在冲突,而工程中又必须同时使用这两个 jar 包,该怎么办呢?
冲突场景
解决方案1:微服务隔离
解决方案2:类加载器隔离
第三方接口v1版本的调用结果:
DeviceBasicInfoV1 {
deviceNo='GUWD5320P001',
status='RENT_OUT',
socketCount=8,
inboundDate=Sun Mar 03 15:32:28 CST 2019,
manager='张三'
}
第三方接口v2版本的调用结果:
DeviceBasicInfoV2 {
deviceNo='GUWD5320P001',
status='RUNNING',
totalSocketCount=22,
monitorSocketCount=6,
slotCount=3,
region='西南',
usage='市排水给水流量监测'
}