Uploaded image for project: 'Jenkins'
  1. Jenkins
  2. JENKINS-33712

Empty parameterized build properties not quoted when passed to ant



    • Bug
    • Resolution: Fixed
    • Blocker
    • ant-plugin, core
    • Jenkins 1.654 ; Jenkins 2.0 ; Jenkins 2.1
      Ant Plugin 1.2
      Windows 7 x86_64 (master and slave)
      Apache Ant 1.9.6


      I have a parameterized build job that defines multiple string parameters. The main build step in that job is "Invoke Ant".

      Even though I do not define any "Properties" under "Invoke Ant", all of my job parameters are being passed to ant using "-D<Name>=<Value>". That is fine, except when one of my string parameters is blank. In that case Jenkins passes ant "-D<Name>=", which causes ant to barf.

      If a job parameter is blank then either it should not be passed to ant, or (probably better) a quoted empty string ("") should be passed to ant.

      Attached are a trivial ant build.xml and Jenkins config.xml that demonstrate the problem.

      Here is a sample Console Output:

      Building remotely on iqautobuild14 in workspace F:\Jenkins\workspace\AntJobWithProperty
      [AntJobWithProperty] $ cmd.exe /C "F:\Jenkins\tools\hudson.tasks.Ant_AntInstallation\Ant_from_Apache_\bin\ant.bat -DMY_VAR= && exit %%ERRORLEVEL%%"
      Missing value for property MY_VAR
      Build step 'Invoke Ant' marked build as failure
      Finished: FAILURE

      Note that this issue appears to be the same as JENKINS-5157 and JENKINS-7204 (among others), but those issues are supposedly fixed already. Either there is a subtle difference here that I do not understand, or Jenkins has suffered a regression.


        1. build.xml
          0.1 kB
        2. config.xml
          1 kB

        Issue Links



              escoem Emilio Escobar
              kcurrier Keith Currier
              8 Vote for this issue
              15 Start watching this issue