Свойство Phing в файле свойств должно содержать несколько значений - PullRequest
4 голосов
/ 07 января 2011

Насколько я знаю, невозможно иметь массив значений в файле свойств. Что было бы лучшим решением для хранения нескольких значений в свойстве?

например. часть файла свойств

# directory definitions 
# containing e.g. CSS, Javascript, ...
project.dirname_css = css
project.dirname_js = javascript

Мне нужен массив свойств, таких как:

# directory definitions 
# containing e.g. CSS, Javascript, ...
project.dirname_css = [css,portal_specific]
project.dirname_js = [javascript,portal_specific]

чтобы зациклить их в build.xml
Любые предложения, как это сделать?
Я мог бы представить делить значения на; и взорвать их в build.xml. Есть лучшие предложения?

Ответы [ 2 ]

7 голосов
/ 07 января 2011
project.dirname_css = foo,bar,baz

И вы сможете повторить их с задачей phing forearch:)

См .: http://phing.info/docs/guide/trunk/chapters/appendixes/AppendixB-CoreTasks.html#ForeachTask

0 голосов
/ 09 февраля 2016

Проходя через это через несколько лет. Указанная ссылка в ответе Кристофа изменилась на: https://www.phing.info/docs/guide/trunk/ForeachTask.html

Также вот мое решение, использующее идею Кристофа. В моем случае у меня были определенные файлы сценариев оболочки, которые мне нужны, чтобы убедиться, что владелец / группа доступна для чтения / записи:

// In the properties file:
project.perm775files = app/blocker.sh,app/tester.sh

// In the build xml file
<foreach list="${project.perm775files}" delimiter="," param="filepath" target="perm775" />
<target name="perm775">
    <exec command="sudo chmod 775 ${filepath}" />
</target>
...