Maven 2 & 3
  1. Maven 2 & 3
  2. MNG-3268

Command line doesn't handle multiple -P correctly

    Details

    • Type: Improvement Improvement
    • Status: Closed Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 2.0.7
    • Fix Version/s: 2.0.10, 2.1.0-M1
    • Component/s: Command Line
    • Labels:
      None
    • Number of attachments :
      1

      Description

      It is currently not possible to have more than one -P on the same command line. Only the first specified profile is considered.

      So if you do

      mvn -Pmain -Ptest

      only the main profile will be taken into account.

      This may sound enough but it's not when your maven call is wrapped into a batch file. Let's say you have a batch doing the compilation of a given module:

      a.bat
      -------------------------------------
      mvn install -Pmymodule %*
      -------------------------------------

      and you want to pass a special integration tests profile you would do:

      a.bat -Pintegration-tests

      But that won't work since you are not allowed to have two -P.

      To merge them in DOS shell is quite a pain in the ***....

        Issue Links

          Activity

          Hide
          Olivier Lamy added a comment -

          Do you want to activate more than one profile ?
          If yes, look at mvn -h and you can close the issue :
          ...
          P,-activate-profiles Comma-delimited list of profiles to activate
          ...

          Show
          Olivier Lamy added a comment - Do you want to activate more than one profile ? If yes, look at mvn -h and you can close the issue : ... P, -activate-profiles Comma-delimited list of profiles to activate ...
          Hide
          Henri Tremblay added a comment -

          No. I know I can do -Pmain,test.

          What I need is two -P. One is directly in the batch file and one is passed by the user calling the batch file. The ones in the batch are the default for the script and the one added by the user are specific to a given batch call.

          For example, I want to deploy on an application server. The deploy.bat contains a -Pdeploy to tell mvn it should deploy during the build. Then the user pass a -Pdev to tell that he wants to deploy on the dev platform.

          That is not currently possible. And I don't want him to have to modify his settings.xml all the time.

          Show
          Henri Tremblay added a comment - No. I know I can do -Pmain,test. What I need is two -P. One is directly in the batch file and one is passed by the user calling the batch file. The ones in the batch are the default for the script and the one added by the user are specific to a given batch call. For example, I want to deploy on an application server. The deploy.bat contains a -Pdeploy to tell mvn it should deploy during the build. Then the user pass a -Pdev to tell that he wants to deploy on the dev platform. That is not currently possible. And I don't want him to have to modify his settings.xml all the time.
          Hide
          Paul Gier added a comment -

          Attaching a small patch to allow -P to be specified multiple times.

          Show
          Paul Gier added a comment - Attaching a small patch to allow -P to be specified multiple times.
          Hide
          Henri Tremblay added a comment -

          Nice! Thanks Paul

          Show
          Henri Tremblay added a comment - Nice! Thanks Paul
          Hide
          Paul Gier added a comment -

          This is now fixed in svn.

          Show
          Paul Gier added a comment - This is now fixed in svn.
          Hide
          Paul Benedict added a comment -

          It appears this patch also fixes MNG-3545

          Show
          Paul Benedict added a comment - It appears this patch also fixes MNG-3545
          Hide
          John Casey added a comment -

          Adding fix-for for both 2.0.10 and 2.1.0-M1, since 2.1.0-M1 will actually be released first and may not incorporate all of the eventual issue fixes released in 2.0.10.

          Show
          John Casey added a comment - Adding fix-for for both 2.0.10 and 2.1.0-M1, since 2.1.0-M1 will actually be released first and may not incorporate all of the eventual issue fixes released in 2.0.10.

            People

            • Assignee:
              Paul Gier
              Reporter:
              Henri Tremblay
            • Votes:
              1 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: