我正在开发一个依赖于第三方库的项目,该项目使用2.4.x和2.5.x版本的Google Protobuf。有没有办法让他们在一个项目中共同生活?
答案 0 :(得分:2)
第三方图书馆是开源的吗?如果是这样,最好的办法是使用最新版本的protobufs重建它们。较新的protobuf版本(与任何好的库一样)向后兼容针对旧版本编写的代码。您必须确保重新生成protoc
生成的代码,如果项目'构建系统不会自动执行此操作。
如果它们不是开源的,并且您无法让供应商更新它们,那么我认为您唯一能做的就是使用单独的ClassLoader
加载库。那显然非常难看。