Description
简要描述
EntPayServiceImpl.encryptRSA 打包编译出错
模块版本情况
- WxJava 模块名: weixin-java-pay
- WxJava 版本号: 4.2.7.B
详细描述
打包后编译如下:
package com.github.binarywang.wxpay.service.impl;
import com.github.binarywang.wxpay.bean.entpay.EntPayBankQueryRequest;
import com.github.binarywang.wxpay.bean.entpay.EntPayBankQueryResult;
import com.github.binarywang.wxpay.bean.entpay.EntPayBankRequest;
import com.github.binarywang.wxpay.bean.entpay.EntPayBankResult;
import com.github.binarywang.wxpay.bean.entpay.EntPayQueryRequest;
import com.github.binarywang.wxpay.bean.entpay.EntPayQueryResult;
import com.github.binarywang.wxpay.bean.entpay.EntPayRedpackQueryRequest;
import com.github.binarywang.wxpay.bean.entpay.EntPayRedpackQueryResult;
import com.github.binarywang.wxpay.bean.entpay.EntPayRedpackRequest;
import com.github.binarywang.wxpay.bean.entpay.EntPayRedpackResult;
import com.github.binarywang.wxpay.bean.entpay.EntPayRequest;
import com.github.binarywang.wxpay.bean.entpay.EntPayResult;
import com.github.binarywang.wxpay.bean.entpay.GetPublicKeyResult;
import com.github.binarywang.wxpay.bean.entwxpay.EntWxEmpPayRequest;
import com.github.binarywang.wxpay.bean.request.WxPayDefaultRequest;
import com.github.binarywang.wxpay.bean.result.BaseWxPayResult;
import com.github.binarywang.wxpay.config.WxPayConfig;
import com.github.binarywang.wxpay.exception.WxPayException;
import com.github.binarywang.wxpay.service.EntPayService;
import com.github.binarywang.wxpay.service.WxPayService;
import com.github.binarywang.wxpay.util.SignUtils;
import java.io.File;
import java.nio.charset.StandardCharsets;
import java.nio.file.Files;
import java.nio.file.OpenOption;
import java.nio.file.Path;
import java.nio.file.attribute.FileAttribute;
public class EntPayServiceImpl
implements EntPayService
{
中间省略
/* Error */
private String encryptRSA(File publicKeyFile, String srcString)
throws WxPayException
{
// Byte code:
// 0: new 101 org/bouncycastle/jce/provider/BouncyCastleProvider
// 3: dup
// 4: invokespecial 102 org/bouncycastle/jce/provider/BouncyCastleProvider: ()V
// 7: invokestatic 103 java/security/Security:addProvider (Ljava/security/Provider;)I
// 10: pop
// 11: ldc 104
// 13: invokestatic 105 javax/crypto/Cipher:getInstance (Ljava/lang/String;)Ljavax/crypto/Cipher;
// 16: astore_3
// 17: new 106 org/bouncycastle/openssl/PEMParser
// 20: dup
// 21: new 107 java/io/FileReader
// 24: dup
// 25: aload_1
// 26: invokespecial 108 java/io/FileReader: (Ljava/io/File;)V
// 29: invokespecial 109 org/bouncycastle/openssl/PEMParser: (Ljava/io/Reader;)V
// 32: astore 4
// 34: new 110 org/bouncycastle/openssl/jcajce/JcaPEMKeyConverter
// 37: dup
// 38: invokespecial 111 org/bouncycastle/openssl/jcajce/JcaPEMKeyConverter: ()V
// 41: ldc 112
// 43: invokevirtual 113 org/bouncycastle/openssl/jcajce/JcaPEMKeyConverter:setProvider (Ljava/lang/String;)Lorg/bouncycastle/openssl/jcajce/JcaPEMKeyConverter;
// 46: aload 4
// 48: invokevirtual 114 org/bouncycastle/openssl/PEMParser:readObject ()Ljava/lang/Object;
// 51: checkcast 115 org/bouncycastle/asn1/x509/SubjectPublicKeyInfo
// 54: invokevirtual 116 org/bouncycastle/openssl/jcajce/JcaPEMKeyConverter:getPublicKey (Lorg/bouncycastle/asn1/x509/SubjectPublicKeyInfo;)Ljava/security/PublicKey;
// 57: astore 5
// 59: aload_3
// 60: iconst_1
// 61: aload 5
// 63: invokevirtual 118 javax/crypto/Cipher:init (ILjava/security/Key;)V
// 66: aload_3
// 67: aload_2
// 68: getstatic 119 java/nio/charset/StandardCharsets:UTF_8 Ljava/nio/charset/Charset;
// 71: invokevirtual 120 java/lang/String:getBytes (Ljava/nio/charset/Charset;)[B
// 74: invokevirtual 121 javax/crypto/Cipher:doFinal ([B)[B
// 77: astore 6
// 79: invokestatic 122 java/util/Base64:getEncoder ()Ljava/util/Base64$Encoder;
// 82: aload 6
// 84: invokevirtual 123 java/util/Base64$Encoder:encodeToString ([B)Ljava/lang/String;
// 87: astore 7
// 89: aload 4
// 91: invokevirtual 124 org/bouncycastle/openssl/PEMParser:close ()V
// 94: aload 7
// 96: areturn
// 97: astore 5
// 99: aload 4
// 101: invokevirtual 124 org/bouncycastle/openssl/PEMParser:close ()V
// 104: goto +12 -> 116
// 107: astore 6
// 109: aload 5
// 111: aload 6
// 113: invokevirtual 126 java/lang/Throwable:addSuppressed (Ljava/lang/Throwable;)V
// 116: aload 5
// 118: athrow
// 119: astore_3
// 120: new 128 com/github/binarywang/wxpay/exception/WxPayException
// 123: dup
// 124: ldc -127
// 126: aload_3
// 127: invokespecial 130 com/github/binarywang/wxpay/exception/WxPayException: (Ljava/lang/String;Ljava/lang/Throwable;)V
// 130: athrow
// Line number table:
// Java source line #175 -> byte code offset #0
// Java source line #176 -> byte code offset #11
// Java source line #177 -> byte code offset #17
// Java source line #178 -> byte code offset #34
// Java source line #179 -> byte code offset #48
// Java source line #181 -> byte code offset #59
// Java source line #182 -> byte code offset #66
// Java source line #183 -> byte code offset #79
// Java source line #184 -> byte code offset #89
// Java source line #183 -> byte code offset #94
// Java source line #177 -> byte code offset #97
// Java source line #185 -> byte code offset #119
// Java source line #186 -> byte code offset #120
// Local variable table:
// start length slot name signature
// 0 131 0 this EntPayServiceImpl
// 0 131 1 publicKeyFile File
// 0 131 2 srcString String
// 16 51 3 cipher javax.crypto.Cipher
// 119 8 3 e Exception
// 32 68 4 reader org.bouncycastle.openssl.PEMParser
// 57 5 5 publicKey java.security.PublicKey
// 97 20 5 localThrowable Throwable
// 77 6 6 encrypt byte[]
// 107 5 6 localThrowable1 Throwable
// 87 8 7 str String
// Exception table:
// from to target type
// 34 89 97 java/lang/Throwable
// 99 104 107 java/lang/Throwable
// 0 94 119 java/lang/Exception
// 97 119 119 java/lang/Exception
}
}