gpt4 book ai didi

java - 处理 JAR 和开发中的资源文件路径

转载 作者:行者123 更新时间:2023-11-29 06:23:22 27 4
gpt4 key购买 nike

我有一个 keystore 文件,我希望它可用于我的应用程序中的多个类。我制作了一个 .config 文件,其中包含 keystore 文件的名称、密码和其他信息。

这是一个基于 Maven 的项目,所以 keystore 在/src/main/resources 中。我构建了一个 jar 并将文件移动到 jar 中的/resources 。我希望 .config 文件包含类似“resources/keystore.jks”的内容。

我如何解析 .config 文件以便它:

  1. 将/src/main/resources/keystore.jks 用于开发中的应用程序代码。
  2. 使用/src/test/resources/keystore.jks 作为测试代码。
  3. 使用 jar 中的/resources。

最佳答案

It's a Maven-based project, so the keystore is in /src/main/resources. I build a jar and move the file to /resources in the jar. I'd like the .config file to say something like "resources/keystore.jks".

你为什么要这么做?你不应该移动它。只需将该 keystore 放入 resources/resources/keystore.jks如果您希望它在 /resources 中可用在类路径上。

How do I parse the .config file so it:

  1. Uses /src/main/resources/keystore.jks for application code in development.
  2. Uses /src/test/resources/keystore.jks for test code.
  3. Uses /resources in the jar.

如果您听从我之前的建议,那么您就没有什么特别要做的了。

  1. src/main/resources 中的资源在普通类路径中可用
  2. src/test/resources 中的资源在测试类路径中可用(在运行时优先于普通类路径 mvn test )
  3. src/main/resources是资源路径的根。如果您希望在 /my/package/my.properties 下可用, 然后输入 src/main/resources/my/package/my.properties .

如果这确实不能满足您的需求,请查看 resources filtering .过滤可以结合profiles对于更复杂的事情。或者您也可以使用多个过滤器并通过传递一个属性来选择正确的过滤器。但是,正如我所说,我不确定您是否需要这个。

关于java - 处理 JAR 和开发中的资源文件路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2075616/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com