JSCH -> 永久添加 'my.host.com' (RSA) 到已知主机列表(错误)

JSCH -> Permanently added 'my.host.com' (RSA) to the list of known hosts (bug)

我在 SFTP 服务器上有一个文件,我的应用程序逐行读取该文件。从应用程序的角度来看,一切都很好。该文件已处理,一切都按预期工作。但是有一个奇怪的地方。我的应用程序连续(每分钟一条消息)在日志中打印此消息:

2021-07-09 09:18:10.387 WARN 1 --- [com:22/out/Test] o.a.c.c.file.remote.SftpOperations : JSCH -> Permanently added 'my.host.com' (RSA) to the list of known hosts.

我正在为 camel-spring-boot-startercamel-ftp 使用版本 3.9.0。 这是连接地址的样子:sftp://username@my.host.com:22/out/Test?fileName=myfile.txt&privateKeyFile=/usr/src/app/mykey.dat&delete=true&initialDelay=60000&delay=60000&recursive=true&disconnect=true&useUserKnownHostsFile=false

我在 Jira 上看到类似的已解决问题。我们是否有可能未解决此问题或未对这些依赖项进行此修复?

默认情况下,Camel SFTP 组件将参数 strictHostKeyChecking 设置为 no(始终插入新的主机密钥)。 JSch 在插入新的主机密钥时会记录该警告。因为您设置了参数 useUserKnownHostsFile=false 并且没有指定已知的主机文件,所以 JSch 不会永久记住新的主机密钥,因此它总是插入主机密钥并在后续连接中记录该警告。

我通过配置记录器来抑制该警告来解决这个问题:

logging.level:
  org.apache.camel.component.file.remote: ERROR