我正在开发一个项目,我需要连接到远程AIX主机以使用JSCH API拉取.zip文件。
该代码在开发和AT环境中工作正常。
但是在UAT环境中它没有按预期工作,即使AT和UAT都指向同一个远程主机。
我在课程中遇到错误NoClassDefFoundError 组织/ BouncyCastle的/加密/模式/ SICBlockCipher。
请找到代码的快照和例外。
我们目前处于UAT阶段。您的帮助将得到满足
JSch jsch= null;
Session session= null;
Channel channel= null;
InputStream in= null;
ChannelSftp channelSftp = null;
jsch=new JSch();
session=jsch.getSession(remoteUserId, remoteHostName, 22);
session.setPassword(remotePassword);
session.setConfig("StrictHostKeyChecking", "no");
channel = session.openChannel("sftp");
channel.connect();
channelSftp = (ChannelSftp)channel;
Vector<ChannelSftp.LsEntry> fileList= channelSftp.ls(remoteImageDir);
java.lang.NoClassDefFoundError: org/bouncycastle/crypto/modes/SICBlockCipher
at org.bouncycastle.jce.provider.JCEBlockCipher.engineSetMode(Source)
at javax.crypto.Cipher$a_.a(Unknown Source)
at javax.crypto.Cipher.a(Unknown Source)
at javax.crypto.Cipher.init(Unknown Source)
at javax.crypto.Cipher.init(Unknown Source)
at com.jcraft.jsch.jce.AES256CTR.init(AES256CTR.java:57)
at com.jcraft.jsch.Session.checkCipher(Session.java:2072)
at com.jcraft.jsch.Session.checkCiphers(Session.java:2049)
at com.jcraft.jsch.Session.send_kexinit(Session.java:592)
at com.jcraft.jsch.Session.connect(Session.java:286)
at com.jcraft.jsch.Session.connect(Session.java:162)