我有logback.properties
个文件,其中包含以下属性。
#logging
logging.server=
logging.port=
logging.path=/opt/${project.name}/logs
在我的POM
文件中,我已获得<name>
标记,该标记指定了项目名称。我想在几个属性文件中注入此名称,例如上面的lockback
。执行上述操作会导致创建名为project.name_IS_UNDEFINED
的文件夹。是否可以访问项目名称以及如何使用?
更新
拉尔夫给出了正确的答案,但请查看我的评论,因为对于春季启动应用程序,您需要使用%project.name%
而不是${project.name}
!
答案 0 :(得分:1)
您需要在运行时将maven编译时脚本中定义的属性传输到应用程序中。
最简单的方法是使用maven's resource filtering(名称有点误导,它不是选择文件的过滤器,它是文本/资源文件的属性替换),以便让maven替换{你的logback.properties文件中有{1}}。
真正 $ {BASEDIR} / src目录/主/资源
如果您只想为一个文件启用资源过滤(而不是为了防止maven替换其他标记,那么您可以使用此代码段:
${project.name}
答案 1 :(得分:0)