【问题标题】:Maven Project : How to specify a relative path in a *.ini file?Maven 项目:如何在 *.ini 文件中指定相对路径?
【发布时间】:2014-03-21 19:10:11
【问题描述】:

在一个 Maven 项目中,我在这个目录中有一个 settings.ini 文件:

|-src/main/resources/configurations

settings.ini文件,需要引用另一个文件,tempDB.sql这个目录下:

|-src/main/resources/databases

所以,我在我的 settings.ini 文件中尝试了这个相对路径,但没有成功:

temp_database = ../databases/tempDB.sql

如何在我的.ini 文件中指定相对路径?

【问题讨论】:

    标签: java maven relative-path ini


    【解决方案1】:

    由于 .ini 文件本身不会读取路径,因此您的代码将使用项目根目录作为开始。在这种情况下,您应该使用:

    |-src/main/resources/databases/tempDB.sql
    

    【讨论】:

    • 完美! +1。等待几秒钟接受你的回答:)
    【解决方案2】:

    小心@renke 的回答。这在您的开发环境之外的任何环境中都不起作用,因为该项目的源代码在其他环境中不可用。更好的解决方案是让资源文件引用文件名temp_database=resource/tempDB.sql,然后将该文件作为类路径资源加载到java "classpath:" + tempDatabase 中(假设tempDatabase 保存从您的ini 文件中读取的属性值)。如果这个文件不应该对你的 java 代码可用,那么它首先不应该在 src/main/resource 中。

    【讨论】:

    • 我非常想将您的拼写错误从“Joas”编辑为“Joao”,但更改太小,而且您的语法对我来说太棒了,我找不到要更改的任何其他内容。诅咒。
    • 实际上,我对第二句话并不满意,虽然从技术上讲它的格式很好,但在会话中以第二个子句开头会更正确,即:因为...,这不会工作。我自己修正了错字,你这个懒虫(谢谢):)
    • 哈!嘿,这不是我的错!我真的被拒绝了! =P
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-10-22
    • 2017-06-03
    • 1970-01-01
    • 1970-01-01
    • 2011-01-11
    相关资源
    最近更新 更多