我已经设法将我的嵌入式 tomcat 配置为使用密钥库文件,并且当我从 eclipse 执行项目时它可以工作。
代码很简单:
...
String keystore = new File(MyServer.class.getResource("/keystore").toURI()).toPath().toString();
httpsConnector.setAttribute("keystoreFile",keystore);
...
该文件keystore
位于添加到构建路径的源目录中。
将项目导出到可执行 jar 后,我可以验证keyfile
jar 根目录中是否存在。
但是在执行jar时,我得到了这个错误:
Exception in thread "main" java.lang.IllegalArgumentException: URI is not hierarchical
所以我假设,我不能用httpsConnector.setAttribute("keystoreFile",...)
. 还有另一种配置方法吗?我真的不想在临时目录中复制密钥文件并从那里引用它。