Spring kafka无法从类路径读取信任存储文件



我正在构建一个需要SASL_SSL配置的kafka消费者应用程序。apache kafka无法识别位于类路径中的信任存储文件,并且看起来有一个打开的请求来增强它(kafka-7685(。

同时,解决这个问题的最佳方法是什么。同样的应用程序也需要部署在PCF中,所以解决方案应该在基于本地windows的开发和PCF(linux(期间都能工作。

任何解决方案都将不胜感激。

以下是将文件复制到java临时目录的代码

String tempDirPath = System.getProperty("java.io.tmpdir");
System.out.println("Temp dir : " + tempDirPath);
File truststoreConf = ResourceUtils.getFile("classpath:Truststore.jks");
File truststoreFile = new File(tempDirPath + truststoreConf.getName());
FileUtils.copyFile(truststoreConf, truststoreFile);
System.setProperty("ssl.truststore.location", truststoreFile.getAbsolutePath());

在创建SpringApplication之前,可以使用ClassPathResourceFileCopyUtils将其从jar复制到main()临时目录中的文件中。

此问题的根本原因是启用了资源筛选。资源筛选过程中的Maven会损坏二进制文件。所以,如果你已经启用了,禁用它

最新更新