NoSuchAlgorithmException:DH KeyPairGenerator 在骆驼上不可用-ftp
NoSuchAlgorithmException: DH KeyPairGenerator not available on camel-ftp
我在一个项目中使用 Apache Camel,当我需要使用 camel-ftp 组件将一些文件发送到远程服务器时,我遇到了这个异常:
com.jcraft.jsch.JSchException: Session.connect: java.security.NoSuchAlgorithmException: DH KeyPairGenerator not available
我想知道为什么它会发生在我的项目中。因此,我开始了一个仅包含 camel-core 和 camel-ftp 组件的快速小项目,我将路线粘贴到那里并且运行良好。
from("file:data/input?noop=true")
.log("Uploading file ${file:name}")
.to("sftp://www.mydestination.com:22/../opt/tmp?autoCreate=false&username=MyUser&password=MyPassword&passiveMode=true")
.log("Uploaded file ${file:name} complete.");
我正在使用 Apache Karaf 来 运行 OSGI 包(我的应用程序就是其中之一)。我检查了不同的环境,但结果仍然是异常。
我真的不知道它会是什么。任何人都知道它的可能原因是什么?
DH 密钥对生成器通常是 JRE/JSE 的一部分,如果您的 JDK 应该包括在内(>顺便说一句,您使用的是哪个 JDK 版本?)。
鉴于此,您的错误可能是由于错误的类路径造成的。
我建议你检查“-Djava.ext.dirs”的值属性(以及相应文件夹的内容),例如:
Windows:
java-Djava.ext.dirs="C:\Program Files\Java\jdk1.6.0_07\jre\lib\ext;C:\dir2"
Unix:
java-Djava.ext.dirs=$JAVA_HOME/jre/lib/ext:/dir2
您还需要 specify/modify Karaf 安全提供程序,请查看:
https://karaf.apache.org/manual/latest/security
我在一个项目中使用 Apache Camel,当我需要使用 camel-ftp 组件将一些文件发送到远程服务器时,我遇到了这个异常:
com.jcraft.jsch.JSchException: Session.connect: java.security.NoSuchAlgorithmException: DH KeyPairGenerator not available
我想知道为什么它会发生在我的项目中。因此,我开始了一个仅包含 camel-core 和 camel-ftp 组件的快速小项目,我将路线粘贴到那里并且运行良好。
from("file:data/input?noop=true")
.log("Uploading file ${file:name}")
.to("sftp://www.mydestination.com:22/../opt/tmp?autoCreate=false&username=MyUser&password=MyPassword&passiveMode=true")
.log("Uploaded file ${file:name} complete.");
我正在使用 Apache Karaf 来 运行 OSGI 包(我的应用程序就是其中之一)。我检查了不同的环境,但结果仍然是异常。
我真的不知道它会是什么。任何人都知道它的可能原因是什么?
DH 密钥对生成器通常是 JRE/JSE 的一部分,如果您的 JDK 应该包括在内(>顺便说一句,您使用的是哪个 JDK 版本?)。 鉴于此,您的错误可能是由于错误的类路径造成的。
我建议你检查“-Djava.ext.dirs”的值属性(以及相应文件夹的内容),例如:
Windows: java-Djava.ext.dirs="C:\Program Files\Java\jdk1.6.0_07\jre\lib\ext;C:\dir2"
Unix: java-Djava.ext.dirs=$JAVA_HOME/jre/lib/ext:/dir2
您还需要 specify/modify Karaf 安全提供程序,请查看: https://karaf.apache.org/manual/latest/security