Java Ant不可变属性到可变属性

Java Ant不可变属性到可变属性,java,maven,ant,build,Java,Maven,Ant,Build,我有个问题。我正在为maven使用antrun插件并执行下一步操作:我有文件夹和子文件夹(我不知道什么叫做子文件夹及其编号),我正在使用它们的名称(子文件夹名称-“1”,存档名称-“1.acp”)对这些子文件夹进行存档 但是属性dir是不可变的!!!所有档案的名称都是“1.acp”。如何使此属性可变或以其他方式执行此操作?您可以使用ant contrib提供的 属性unset,允许您重置值(例如上面链接中的值): ${x} ${x} 因此,您必须将其修复为: <sequentia

我有个问题。我正在为maven使用antrun插件并执行下一步操作:我有文件夹和子文件夹(我不知道什么叫做子文件夹及其编号),我正在使用它们的名称(子文件夹名称-“1”,存档名称-“1.acp”)对这些子文件夹进行存档


但是属性dir是不可变的!!!所有档案的名称都是“1.acp”。如何使此属性可变或以其他方式执行此操作?

您可以使用ant contrib提供的

属性
unset
,允许您重置值(例如上面链接中的值):


${x}
${x}
因此,您必须将其修复为:

 <sequential>
   <var name="dir" unset="true"/>
   <basename property="dir" file="@{file}" />
   <zip destfile="${project.build.outputDirectory}/alfresco/extension/agilent/${dir}.acp" basedir="@{file}" />
 </sequential>

您可以使用1.8 Ant的

就你而言:

<sequential>
  <local name="dir"/>
  <basename property="dir" file="@{file}"/>
  <zip
    destfile="${project.build.outputDirectory}/alfresco/extension/agilent/${dir}.acp" 
    basedir="${dir}"
  />
</sequential>

 <sequential>
   <var name="dir" unset="true"/>
   <basename property="dir" file="@{file}" />
   <zip destfile="${project.build.outputDirectory}/alfresco/extension/agilent/${dir}.acp" basedir="@{file}" />
 </sequential>
<sequential>
  <local name="dir"/>
  <basename property="dir" file="@{file}"/>
  <zip
    destfile="${project.build.outputDirectory}/alfresco/extension/agilent/${dir}.acp" 
    basedir="${dir}"
  />
</sequential>