这应该很简单,但花了我几个小时。我在此站点上找到的所有内容都表明我做得对,但仍然找不到该文件。
在 jar 文件中,我在顶层有两个文件“CDAkeystore.jks”和“CDAtruststore.jks”。然而,当我打电话时,
securityProps.setProperty("javax.net.ssl.keyStore","CDAkeystore.jks");
我得到一个系统找不到请求的文件错误。调用此方法的类文件在通常的包排列中位于同一个 jar 中。
jar文件如下:
com ..... (a lot more class files)
org ..... (lots of class files)
META-INF
CDAtruststore.jks
CDAkeystore.jks
这怎么会这么难?!
---------- 添加信息 ------n
由于使用路径的对象是开源的,我找到了他们用来加载文件的例程。这是:
InputStream keystoreInputStream = preBufferInputStream(new FileInputStream(keyStoreName));
根据 FileInputStream(String name) 的文档是
通过打开与实际文件的连接来创建 FileInputStream,该文件由文件系统中的路径名“name”命名。那么这条路径应该如何表达呢?