我在经营一个Kafka制作人。我已经在yml文件中配置了密钥库位置,并在eclipse中运行时获取了它。但是当代码作为jar运行时,它无法找到密钥库位置。如何解决这个问题。
spring:
kafka:
producer:
ssl:
key-password:
key-store-location: classpath:es-cert.jks
key-store-password: password
key-store-type: jks
这是我的yml档案。
我得到以下错误:
JAVA木卫一。FileNotFoundException:类路径资源[es-cert.jks]无法解析为绝对文件路径,因为它不位于文件系统:jar:file:/u01/home/app/user docker/kafka2中。罐子/BOOT-INF/classes/es-cert.jks
但是es-cert.jks存在于jar中。
Kafka不理解Spring资源只理解文件系统上的文件。
您不能使用classpath:
从jar引用密钥存储,因为Spring Boot必须将资源转换为绝对路径才能将其传递给Kafka。
private String resourceToPath(Resource resource) {
try {
return resource.getFile().getAbsolutePath();
}
catch (IOException ex) {
throw new IllegalStateException("Resource '" + resource + "' must be on a file system", ex);
}
一种解决方案是自己将密钥库从jar资源复制到文件系统上的一个文件中。在加载SpringApplication
之前执行此操作。
e、 g.使用FileCopyUtils
。
有人能帮我整合一下。带jmeter的pfx客户端证书?我已将pfx文件转换为jks文件。我已经在系统中添加了相同的功能。财产。但我无法执行客户的请求。我得到以下错误。 2018-11-08 22:31:08137信息o.a.j.u.SSLManager:JmeterKeyStore位置:C:MyWorkSpace/apache-jmeter-5.0certclientcert。jks type j
我在jre/lib/security下有一个密钥存储文件cacerts,我在其中使用import命令添加了一个证书。 我的密钥库里有50多个证书。如何在密钥库中找到上次导入的证书的别名。我想删除上次添加的证书,我需要为其提供别名。好心的帮助。
根据以下步骤将Swagger从2.9.2升级到3.0.0: https://springfox.github.io/springfox/docs/snapshot/#migrating-from-existing-2-x-版本 在新版本中,虽然功能工作正常,但点击“/swagger-用户界面/index.html”时,以下错误会打印在日志中。 使用springfox-boot-starter 3.
我是Docker的新手。我使用ASP创建了一个Web API。Net内核使用Visual Studio 2019以及VS代码。它很好用。然后我添加了docker支持,并添加了带有默认值的Dockerfile。 当我尝试构建docker映像时,它在Visual Studio 2019和VS代码中都失败了。 但是,如果我尝试使用VisualStudio2019提供的选项运行Docker映像(我可以在其
我正在尝试对现有API启用Azure密钥库证书。我们已经在Azure Key Vault帐户中拥有秘密和Azure Key Vault证书。下面是配置证书的代码: 在我的本地计算机上,我正确地导入了证书,其中包括下载pfx格式。
问题内容: 假设我的jar包“ com.test.io”中有一个名为test.txt的文件。 我将如何编写一个类来检索此文本文件,然后将内容复制到文件系统上的新文件中? 问题答案: 假设jar在您的类路径中: