[英]java.security.auth.login.config file in path with space
[英]Can i set relative path to java.security.auth.login.config?
在我的 Spring Boot 应用程序中,我需要调用:
System.setProperty("java.security.auth.login.config", authConf);
其中 authConf 似乎被认为是文件的绝对路径。
问题是,我的 Spring Boot 应用程序被打包并作为 jar 执行,我想将文件打包到 jar 中。
在所提供的答案这个问题,当一个WAR被部署在一台服务器可能只工作。 当我们使用嵌入式容器运行 JAR 时,它似乎不起作用。
有什么方法可以设置 java.security.auth.login.config 的相对路径来引用我的 jar 中打包的 conf 文件?
我知道答案晚了大约 6 年,但我最近遇到了同样的问题并找到并回答了。 也许我的回答至少会帮助下一个面临这个问题的开发者。
我能够通过首先创建一个JavaLoginConfig
类型的javax.security.auth.login.Configuration
然后使用相同 Configuration 类的Configuration.setConfiguration(configuration method)
来解决它。 使用这种方法,我能够将我们的jaas.conf
捆绑在 jar 中并使用它的相对路径。
举个具体的例子:
URL configLocation=YourClass.getClassLoader().getResource("resources/jaas.conf);"
Configuration secConfig=Configuration.getInstance("JavaLoginConf", new URIParameter(configLocation.toURI());
Configuration.setConfiguration(secConfig);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.