灵异现象(一):为什么POM文件一样,只有我的架包出错

两台机器,一模一样的操作系统,一模一样的JDK,一模一样的Eclipse,一模一样的POM文件,一模一样的代码,但是一台机器运行正常,另一台机器却提示如下错误:

java.util.ServiceConfigurationError: org.jclouds.apis.ApiMetadata: Provider org.jclouds.openstack.keystone.v2_0.KeystoneApiMetadata could not be instantiated
    at java.util.ServiceLoader.fail(Unknown Source)
    ……
Caused by: java.lang.NoClassDefFoundError: com/google/common/base/Objects$ToStringHelper   

查看Eclipse编译路径,发现存在guava 22.0版本,显然这是版本升级导致的问题,必须要切换架包才能解决问题,所以应该所有的机器都无法正常运行才对,但为什么他的机器运行正常呢?

再次核对POM文件,确实一模一样;
核对调用的代码,依然是一模一样;
继续核对编译路径,发现引入的架包也一模一样;
继续检查编译路径,切换到编译路径中的项目标签,突然发现了异常,如下图所示:
引入的项目
原来如此!切换到引入的项目,发现此项目中引入了guava 16.0版本,排除引入的项目,最后所有的机器终于都报错了!

追问为何引入此项目的原因,回答是按Eclipse提示的错误,就随手一点,呵呵,这随手一点,就产生了灵异现象。

结论

在实际的运作中,我们经常发现,一台机器运行正常的代码,切换到其他机器就发生灵异现象,无法正常运行,但只要仔细排除问题,终究能找到问题的根源。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值