问题描述
公司采用的报表组件中的JAR包里包含了老版本的POI代码,但是最近开发需要用到最新版本POI代码,这样就会产生JAR包冲突问题。现在想到的唯一办法就是改变一下POI源码中pacakge,然后重新打一个jar除此之外,还有什么好的解决办法吗? 问题补充:<div class="quote_title">anyasir 写道</div><div class="quote_div">可以试着删除以前的jar,不过有一定风险<br />无论是软件还是jar,一般都会向上兼容,即新版本兼容老版本<br />所以应该可以删除,但不排除某些软件或jar的开发人员违背这个原则<br />poi这玩意儿貌似用的人很多,像这样的jar应该会遵守这个原则<br />不过俺不敢把话说死了</div><br /><br />POI并不是完全向下兼容,已经测试过了..
解决方案
http://www.ibm.com/developerworks/cn/websphere/library/techarticles/haoaili/0512/
解决方案二:
不知道 另外启一个项目怎么样,两个项目的jar包就不会有冲突现象了。
解决方案三:
建议直接上新版本的POI,替换老版本的POI包,修改原来的业务代码来适应新版本的POI包,这样只痛苦一次,以后都方便了。重构Jar包,也很痛苦,说不定还会带来新的问题。
解决方案四:
你想到的方法已经算是很好的解决方案了,如果不想出现这种情况,就是新的库中使用其他类库 如: jxl
解决方案五:
把之前的jar包先移除看有没有影响.
解决方案六:
可以试着删除以前的jar,不过有一定风险无论是软件还是jar,一般都会向上兼容,即新版本兼容老版本所以应该可以删除,但不排除某些软件或jar的开发人员违背这个原则poi这玩意儿貌似用的人很多,像这样的jar应该会遵守这个原则不过俺不敢把话说死了