Здравствуйте, в файле build.xml нужно прописать условия, при выполнении которых системе будет понятно, сборка происходит локально или на Jenkins, это делается для того, чтобы выкачивались библиотеки в определенную директорию. Для этого я определил condition
<condition property="localBuildStatus" value="-Dproject.name=$ {ant.project.name} -Doutput.dist.dir=$ {OUTPUT_DIR}/dist -f pre_build.xml install -Dmaven.repo.local=$ {maven-jenkins-repository}" else="-Dproject.name=$ {ant.project.name} -Doutput.dist.dir=$ {OUTPUT_DIR}/dist -f pre_build.xml install -Dmaven.repo.local=$ {maven-local-repository}"> <isset property="$ {WORKSPACE}"/> </condition>
Идея такова, что при сборке на JENKINS будет доступен $ {WORKSPACE}/, поэтому
<target name="build-tool" depends="clean-build-tool"> <condition property="localBuildStatus" value="-Dproject.name=$ {ant.project.name} -Doutput.dist.dir=$ {OUTPUT_DIR}/dist -f pre_build.xml install -Dmaven.repo.local=$ {maven-jenkins-repository}" else="-Dproject.name=$ {ant.project.name} -Doutput.dist.dir=$ {OUTPUT_DIR}/dist -f pre_build.xml install -Dmaven.repo.local=$ {maven-local-repository}"> <isset property="$ {WORKSPACE}"/> </condition> <exec dir="../." error="mvn_error.log" output="mvn_out.log" failonerror="true" executable="mvn.bat"> <arg line="$ {localBuildStatus}"/> </exec> </target>
в localBuildStatus попадёт значение -Dproject.name=$ {ant.project.name} -Doutput.dist.dir=$ {OUTPUT_DIR}/dist -f pre_build.xml install -Dmaven.repo.local=$ {maven-jenkins-repository}, но это не выполняется. Локально все собирается, а на Jenkins нет. можете сказать, в чем проблема?