如何从属性文件中访问POM项目名称

时间:2016-09-21 08:55:30

标签: spring maven properties spring-boot

我有logback.properties个文件,其中包含以下属性。

#logging
logging.server=
logging.port=
logging.path=/opt/${project.name}/logs

在我的POM文件中,我已获得<name>标记,该标记指定了项目名称。我想在几个属性文件中注入此名称,例如上面的lockback。执行上述操作会导致创建名为project.name_IS_UNDEFINED的文件夹。是否可以访问项目名称以及如何使用?

更新 拉尔夫给出了正确的答案,但请查看我的评论,因为对于春季启动应用程序,您需要使用%project.name%而不是${project.name}

2 个答案:

答案 0 :(得分:1)

您需要在运行时将maven编译时脚本中定义的属性传输到应用程序中。

最简单的方法是使用maven's resource filtering(名称有点误导,它不是选择文件的过滤器,它是文本/资源文件的属性替换),以便让maven替换{你的logback.properties文件中有{1}}。

        真正         $ {BASEDIR} / src目录/主/资源     

如果您只想为一个文件启用资源过滤(而不是为了防止maven替换其他标记,那么您可以使用此代码段:

${project.name}

答案 1 :(得分:0)