阿里云小蜜官网SDK直接运行没有问题,Tomcat中调用出错

问题:
在测试阿里云的云小蜜功能,官网给出的SDK是个main,直接运行的时候没有报错,但是将这个main改成一个可供调用的方法,在maven项目中调用的时候这个方法就开始报错
报出阿里云配置错误
一开始以为是Tomcat和main方法运行存在相应区别导致的,不知道如何解决,
报错位置如下:
在这里插入图片描述
后来发现使用main加载和Tomcat加载有个区别,他们使用的类加载器不一样,直接使用main启动的时候使用的是ClassLoader,正常加载,当使用Tomcat启动的时候是使用WebappClassLoader来加载的,然后就开始报错了.

  1. main正常运行
    main运行未报错
  2. Tomcat调用报错
    Tomcat运行报错
  3. debug查找
    在这里插入图片描述

解决:

经过公司大神指点,更改官网给出的maven依赖版本, 从4.3.4改成4.5.0,两个依赖版本加载project.properties文件存在差别

<dependency>
   <groupId>com.aliyun</groupId>
   <artifactId>aliyun-java-sdk-core</artifactId>
   <version>4.5.0</version>
  </dependency>

4.5.0版本加载方式如下:

props.load(UserAgentConfig.class.getClassLoader().getResourceAsStream("project.properties"));
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值