我们使用ant来构建(一个巨大的)项目,并且(由于遗留原因)我们非常深入地嵌套属性文件中的属性。属性中的嵌套属性(在属性中)(ant to maven migration)
(里面的build.xml例如)
<ant dir="${object.build.dir}" target="deploy" />
(里面的一些属性文件:)
object.build.dir=${base.dir}
(里面的一些其他属性文件(有时甚至是相同的)):
base.dir=${env}/some/dir
那么,因为蚂蚁不再是最近的事了,我们现在正在转向maven,这将是一场噩梦......
的问题是:你怎么看那些内部性能嵌套属性,只要5级深有时候的结果属性...
(作为测试)
过滤器/ TOP_LEVEL。属性:
env=test
过滤器/测试/ mid_level.properties:
specific=spec
过滤器/ top_level.properties还可以读取(另一个环境):
env=prod
等过滤器/生产/ mid_level.properties:
specific=spock
的问题归结为:
如何读取/使用在另一个属性文件中为其定义路径的属性文件中定义的“特定”属性?) (而且这种嵌套遍布各处?)
此外,这不涉及'资源'(这些也涉及到,但不是主要问题,资源是应用程序使用的属性,我谈论的属性是仅在构建时用于指定构建情况)
我找到了答案,但如果有一个更好的我会很高兴选择为最佳答案...
S.
您的属性看起来像一个设置为不同的环境,这从来都不是一个好主意,既不在Ant中也不在Maven中使用属性.. ..可能你可以看看这里:https://github.com/khmarbaise/multienv-maven-plugin...Furthermore我假设你建立每个时间为每个属性,这意味着开发,产品等。这将在Maven中不工作...只需构建一次,然后在一次运行中生成所有需要的输出... – khmarbaise
嘿,谢谢,我肯定会看看它,S。 – Bamboomy