微信支付-无法重写WXPayConfig内的部分抽象方法

本文详细讲述了在使用微信支付SDK时遇到的getWXPayDomain方法不可用问题,以及如何修改WXPayConfig的抽象方法使其在不同包中可见。通过修改抽象属性为public,并提供了解决方案和编译打包过程,适用于Java开发者。
摘要由CSDN通过智能技术生成

本文章主要解决一下问题。

1、微信支付无法实现getWXPayDomain()方法

2、WXPayConfig 内的部分抽象方法无法“重写”,解决办法。

这是依赖。

<dependency>
    <groupId>com.github.wxpay</groupId>
    <artifactId>wxpay-sdk</artifactId>
    <version>3.0.9</version>
</dependency>

1、在官方下载sdk,  sdk下载地址:https://pay.weixin.qq.com/wiki/doc/api/jsapi.php?chapter=11_1 

2、修改WXPayConfig文件
  下载后(WxPayAPI_JAVA.zip),先解压(java_sdk_v3.0.9),然后使用编辑器打开java_sdk_v3.0.9,这里以idea编辑器为例,接着找到WXPayConfig类,在WXPayConfig的抽象属性前面加上public。原版的缺省(default)抽象属性只能在同一个package下可见,在不同package下面缺省属性是没有访问权限的,跨包必须改成公共public属性才可以。

如图,abstract 前面public的, 都加上public。 

3、接下来将要进行打包操作。

我是执行的 install (仅仅打包到本地仓库,线上不敢乱弄啊~~)

不了解maven打包命令的可以看看这个文章:package、install、deploy

可以发现target目录下有了一个: wxpay-sdk-3.0.9.jar  文件, 去本地仓库看一下,发现有了。

这个时候, 刷新自己的项目, 发现OK了,不报错了。  。。

PS: 后来我把本地sdk的都删掉了 , 重新拉了一下官方的。。

千万只🦙飘过, 默认的居然有了 protected 修饰符,白整了。。不过还是记录一下吧。 

参考资料:

 
    https://www.freesion.com/article/6846385394/

    https://blog.csdn.net/weixin_44563573/article/details/124660156

    https://bbs.csdn.net/topics/395826440

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值