From 26ac659c716ad8e157b94ddea3e4ca5cd72ed9f8 Mon Sep 17 00:00:00 2001 From: Juven Xu Date: Tue, 30 Aug 2011 15:03:31 +0800 Subject: [PATCH 001/104] grep all phases or plugins prefix does not work as expected, fix it if you grep "e", you actually want "e*", not something like "cl[e]an" --- bash_completion.bash | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/bash_completion.bash b/bash_completion.bash index 8c38077..b1f50a4 100644 --- a/bash_completion.bash +++ b/bash_completion.bash @@ -70,9 +70,9 @@ _mvn() fi done else - if echo "${common_lifecycle_phases}" | grep -q "${cur}" ; then + if echo "${common_lifecycle_phases}" | tr '|' '\n' | grep -q -e "^${cur}" ; then COMPREPLY=( $(compgen -S ' ' -W "${common_lifecycle_phases}" -- ${cur}) ) - elif echo "${common_plugins}" | grep -q "${cur}"; then + elif echo "${common_plugins}" | tr '|' '\n' | grep -q -e "^${cur}"; then COMPREPLY=( $(compgen -S ':' -W "${common_plugins}" -- ${cur}) ) fi fi From d1abd196144ca598ad98853bdecdfb15f8597871 Mon Sep 17 00:00:00 2001 From: "Manfred Moser (mosabua)" Date: Tue, 30 Aug 2011 13:27:00 -0700 Subject: [PATCH 002/104] added support for the maven android plugin --- bash_completion.bash | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/bash_completion.bash b/bash_completion.bash index 5a14680..b2cc853 100644 --- a/bash_completion.bash +++ b/bash_completion.bash @@ -8,7 +8,7 @@ _mvn() opts="-am|-amd|-B|-C|-c|-cpu|-D|-e|-emp|-ep|-f|-fae|-ff|-fn|-gs|-h|-l|-N|-npr|-npu|-nsu|-o|-P|-pl|-q|-rf|-s|-T|-t|-U|-up|-V|-v|-X" common_lifecycle_phases="clean|process-resources|compile|process-test-resources|test-compile|test|package|install|deploy|site" - common_plugins="deploy|failsafe|install|site|surefire|checkstyle|javadoc|jxr|pmd|ant|antrun|archetype|assembly|dependency|enforcer|gpg|help|release|repository|source|eclipse|idea|jetty|cargo|jboss|tomcat|exec|versions|war|ear|ejb" + common_plugins="deploy|failsafe|install|site|surefire|checkstyle|javadoc|jxr|pmd|ant|antrun|archetype|assembly|dependency|enforcer|gpg|help|release|repository|source|eclipse|idea|jetty|cargo|jboss|tomcat|exec|versions|war|ear|ejb|android" plugin_goals_deploy="deploy:deploy-file" plugin_goals_failsafe="failsafe:integration-test|failsafe:verify" @@ -46,6 +46,7 @@ _mvn() plugin_goals_war="war:war|war:exploded|war:inplace|war:manifest" plugin_goals_ear="ear:ear|ear:generate-application-xml" plugin_goals_ejb="ejb:ejb" + plugin_goals_android="android:apk|android:apklib|android:deploy|android:deploy-dependencies|android:dex|android:emulator-start|android:emulator-stop|android:generate-sources|android:help|android:instrument|android:pull|android:push|android:redeploy|android:run|android:undeploy|android:unpack|android:version-update|android:zipalign" options="-Dmaven.test.skip=true|-DskipTests|-Dmaven.surefire.debug|-DenableCiProfile|-Dpmd.skip=true|-Dcheckstyle.skip=true" From ff810d06ea8dca806ec10f883f6f4df8de5cff58 Mon Sep 17 00:00:00 2001 From: "Manfred Moser (mosabua)" Date: Wed, 7 Sep 2011 10:14:23 -0700 Subject: [PATCH 003/104] added android goal to stop all emulators --- bash_completion.bash | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bash_completion.bash b/bash_completion.bash index 2e95794..fc0e77e 100644 --- a/bash_completion.bash +++ b/bash_completion.bash @@ -47,7 +47,7 @@ _mvn() plugin_goals_war="war:war|war:exploded|war:inplace|war:manifest" plugin_goals_ear="ear:ear|ear:generate-application-xml" plugin_goals_ejb="ejb:ejb" - plugin_goals_android="android:apk|android:apklib|android:deploy|android:deploy-dependencies|android:dex|android:emulator-start|android:emulator-stop|android:generate-sources|android:help|android:instrument|android:pull|android:push|android:redeploy|android:run|android:undeploy|android:unpack|android:version-update|android:zipalign" + plugin_goals_android="android:apk|android:apklib|android:deploy|android:deploy-dependencies|android:dex|android:emulator-start|android:emulator-stop|android:emulator-stop-all|android:generate-sources|android:help|android:instrument|android:pull|android:push|android:redeploy|android:run|android:undeploy|android:unpack|android:version-update|android:zipalign" options="-Dmaven.test.skip=true|-DskipTests|-Dmaven.surefire.debug|-DenableCiProfile|-Dpmd.skip=true|-Dcheckstyle.skip=true" From 388f8ad27bb285cef0fb932d4f5a86dd1406b0d2 Mon Sep 17 00:00:00 2001 From: Manfred Moser Date: Mon, 26 Sep 2011 12:10:14 -0700 Subject: [PATCH 004/104] versions plugin goals --- bash_completion.bash | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bash_completion.bash b/bash_completion.bash index fc0e77e..12cc660 100644 --- a/bash_completion.bash +++ b/bash_completion.bash @@ -41,7 +41,7 @@ _mvn() plugin_goals_jboss="jboss:start|jboss:stop|jboss:deploy|jboss:undeploy|jboss:redeploy" plugin_goals_tomcat="tomcat:start|tomcat:stop|tomcat:deploy|tomcat:undeploy|tomcat:undeploy" plugin_goals_exec="exec:exec|exec:java" - plugin_goals_versions="versions:set|versions:commit|versions:revert" + plugin_goals_versions="versions:display-dependency-updates|versions:display-plugin-updates|versions:display-property-updates|versions:update-parent|versions:update-properties|versions:update-child-modules|versions:lock-snapshots|versions:unlock-snapshots|versions:resolve-ranges|versions:set|versions:use-releases|versions:use-next-releases|versions:use-latest-releases|versions:use-next-snapshots|versions:use-latest-snapshots|versions:use-next-versions|versions:use-latest-versions|versions:commit|versions:revert" plugin_goals_scm="scm:add|scm:checkin|scm:checkout|scm:update|scm:status" plugin_goals_war="war:war|war:exploded|war:inplace|war:manifest" From 4e6ea1461b8821224150c6f6f2bd7b92b7ee338f Mon Sep 17 00:00:00 2001 From: Juven Xu Date: Wed, 28 Sep 2011 03:04:26 +0800 Subject: [PATCH 005/104] fixed #7, support -P completion, tested on mac lion --- bash_completion.bash | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/bash_completion.bash b/bash_completion.bash index 12cc660..c5c46ae 100644 --- a/bash_completion.bash +++ b/bash_completion.bash @@ -51,18 +51,27 @@ _mvn() options="-Dmaven.test.skip=true|-DskipTests|-Dmaven.surefire.debug|-DenableCiProfile|-Dpmd.skip=true|-Dcheckstyle.skip=true" + profile_settings=`[ -e ~/.m2/settings.xml ] && grep -e "" -A 1 ~/.m2/settings.xml | grep -e ".*" | sed 's/.*/-P/' | sed 's/<\/id>//g'` + profile_pom=`[ -e pom.xml ] && grep -e "" -A 1 pom.xml | grep -e ".*" | sed 's/.*/-P/' | sed 's/<\/id>//g'` + local IFS=$'|\n' if [[ ${cur} == -D* ]] ; then COMPREPLY=( $(compgen -S ' ' -W "${options}" -- ${cur}) ) + + elif [[ ${cur} == -P* ]] ; then + COMPREPLY=( $(compgen -S ' ' -W "${profile_settings}|${profile_pom}" -- ${cur}) ) + elif [[ ${cur} == -* ]] ; then COMPREPLY=( $(compgen -W "${opts}" -S ' ' -- ${cur}) ) + elif [[ ${prev} == -pl ]] ; then if [[ ${cur} == *,* ]] ; then COMPREPLY=( $(compgen -d -S ',' -P "${cur%,*}," -- ${cur##*,}) ) else COMPREPLY=( $(compgen -d -S ',' -- ${cur}) ) fi + elif [[ ${cur} == *:* ]] ; then for plugin in $common_plugins; do if [[ ${cur} == ${plugin}:* ]]; then @@ -70,6 +79,7 @@ _mvn() COMPREPLY=( $(compgen -W "${!var_name}" -S ' ' -- ${cur}) ) fi done + else if echo "${common_lifecycle_phases}" | tr '|' '\n' | grep -q -e "^${cur}" ; then COMPREPLY=( $(compgen -S ' ' -W "${common_lifecycle_phases}" -- ${cur}) ) From ddd57442d9144121bc3e86984f79e124ebc57b7c Mon Sep 17 00:00:00 2001 From: Manfred Moser Date: Thu, 20 Oct 2011 23:58:55 -0700 Subject: [PATCH 006/104] added missing manifest update goal --- bash_completion.bash | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bash_completion.bash b/bash_completion.bash index fc0e77e..e65adf0 100644 --- a/bash_completion.bash +++ b/bash_completion.bash @@ -47,7 +47,7 @@ _mvn() plugin_goals_war="war:war|war:exploded|war:inplace|war:manifest" plugin_goals_ear="ear:ear|ear:generate-application-xml" plugin_goals_ejb="ejb:ejb" - plugin_goals_android="android:apk|android:apklib|android:deploy|android:deploy-dependencies|android:dex|android:emulator-start|android:emulator-stop|android:emulator-stop-all|android:generate-sources|android:help|android:instrument|android:pull|android:push|android:redeploy|android:run|android:undeploy|android:unpack|android:version-update|android:zipalign" + plugin_goals_android="android:apk|android:apklib|android:deploy|android:deploy-dependencies|android:dex|android:emulator-start|android:emulator-stop|android:emulator-stop-all|android:generate-sources|android:help|android:instrument|android:manifest-update|android:pull|android:push|android:redeploy|android:run|android:undeploy|android:unpack|android:version-update|android:zipalign" options="-Dmaven.test.skip=true|-DskipTests|-Dmaven.surefire.debug|-DenableCiProfile|-Dpmd.skip=true|-Dcheckstyle.skip=true" From d1b3e533417e7bca8f565a0f8ad3c666bcecd5dc Mon Sep 17 00:00:00 2001 From: Juven Xu Date: Tue, 25 Oct 2011 17:16:12 +0800 Subject: [PATCH 007/104] doc for -P completion --- readme.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/readme.md b/readme.md index c170e19..31d96a3 100644 --- a/readme.md +++ b/readme.md @@ -28,3 +28,5 @@ To list available options: To list -D options (like -DskipTests): `$ mvn -D[TAB][TAB]` +To list available profiles: +`$ mvn -P[TAB][TAB]` \ No newline at end of file From 928c9b1b14e83a3cfd402fecae25033d94566933 Mon Sep 17 00:00:00 2001 From: Manfred Moser Date: Thu, 15 Dec 2011 16:34:47 -0800 Subject: [PATCH 008/104] nexus and bundle plugin --- bash_completion.bash | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/bash_completion.bash b/bash_completion.bash index fc0e77e..4e8eddd 100644 --- a/bash_completion.bash +++ b/bash_completion.bash @@ -8,7 +8,7 @@ _mvn() opts="-am|-amd|-B|-C|-c|-cpu|-D|-e|-emp|-ep|-f|-fae|-ff|-fn|-gs|-h|-l|-N|-npr|-npu|-nsu|-o|-P|-pl|-q|-rf|-s|-T|-t|-U|-up|-V|-v|-X" common_lifecycle_phases="clean|process-resources|compile|process-test-resources|test-compile|test|package|install|deploy|site" - common_plugins="deploy|failsafe|install|site|surefire|checkstyle|javadoc|jxr|pmd|ant|antrun|archetype|assembly|dependency|enforcer|gpg|help|release|repository|source|eclipse|idea|jetty|cargo|jboss|tomcat|exec|versions|war|ear|ejb|android|scm" + common_plugins="deploy|failsafe|install|site|surefire|checkstyle|javadoc|jxr|pmd|ant|antrun|archetype|assembly|dependency|enforcer|gpg|help|release|repository|source|eclipse|idea|jetty|cargo|jboss|tomcat|exec|versions|war|ear|ejb|android|scm|nexus|repository" plugin_goals_deploy="deploy:deploy-file" plugin_goals_failsafe="failsafe:integration-test|failsafe:verify" @@ -47,22 +47,33 @@ _mvn() plugin_goals_war="war:war|war:exploded|war:inplace|war:manifest" plugin_goals_ear="ear:ear|ear:generate-application-xml" plugin_goals_ejb="ejb:ejb" - plugin_goals_android="android:apk|android:apklib|android:deploy|android:deploy-dependencies|android:dex|android:emulator-start|android:emulator-stop|android:emulator-stop-all|android:generate-sources|android:help|android:instrument|android:pull|android:push|android:redeploy|android:run|android:undeploy|android:unpack|android:version-update|android:zipalign" + plugin_goals_android="android:apk|android:apklib|android:deploy|android:deploy-dependencies|android:dex|android:emulator-start|android:emulator-stop|android:emulator-stop-all|android:generate-sources|android:help|android:instrument|android:manifest-update|android:pull|android:push|android:redeploy|android:run|android:undeploy|android:unpack|android:version-update|android:zipalign" + plugin_goals_nexus="nexus:staging-list|nexus:staging-close|nexus:staging-drop|nexus:staging-release|nexus:staging-build-promotion|nexus:staging-profiles-list|nexus:settings-download" + plugin_goals_repository="repository:bundle-create|repository:bundle-pack|repository:help" options="-Dmaven.test.skip=true|-DskipTests|-Dmaven.surefire.debug|-DenableCiProfile|-Dpmd.skip=true|-Dcheckstyle.skip=true" + profile_settings=`[ -e ~/.m2/settings.xml ] && grep -e "" -A 1 ~/.m2/settings.xml | grep -e ".*" | sed 's/.*/-P/' | sed 's/<\/id>//g'` + profile_pom=`[ -e pom.xml ] && grep -e "" -A 1 pom.xml | grep -e ".*" | sed 's/.*/-P/' | sed 's/<\/id>//g'` + local IFS=$'|\n' if [[ ${cur} == -D* ]] ; then COMPREPLY=( $(compgen -S ' ' -W "${options}" -- ${cur}) ) + + elif [[ ${cur} == -P* ]] ; then + COMPREPLY=( $(compgen -S ' ' -W "${profile_settings}|${profile_pom}" -- ${cur}) ) + elif [[ ${cur} == -* ]] ; then COMPREPLY=( $(compgen -W "${opts}" -S ' ' -- ${cur}) ) + elif [[ ${prev} == -pl ]] ; then if [[ ${cur} == *,* ]] ; then COMPREPLY=( $(compgen -d -S ',' -P "${cur%,*}," -- ${cur##*,}) ) else COMPREPLY=( $(compgen -d -S ',' -- ${cur}) ) fi + elif [[ ${cur} == *:* ]] ; then for plugin in $common_plugins; do if [[ ${cur} == ${plugin}:* ]]; then @@ -70,6 +81,7 @@ _mvn() COMPREPLY=( $(compgen -W "${!var_name}" -S ' ' -- ${cur}) ) fi done + else if echo "${common_lifecycle_phases}" | tr '|' '\n' | grep -q -e "^${cur}" ; then COMPREPLY=( $(compgen -S ' ' -W "${common_lifecycle_phases}" -- ${cur}) ) From 3f733cd29824d0457107ec59402c4bab661617da Mon Sep 17 00:00:00 2001 From: Evgeny Mandrikov Date: Mon, 9 Jan 2012 21:15:10 +0400 Subject: [PATCH 009/104] Add support for Sonar Maven Plugin --- bash_completion.bash | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/bash_completion.bash b/bash_completion.bash index 15d45f7..a7fc49a 100644 --- a/bash_completion.bash +++ b/bash_completion.bash @@ -8,7 +8,7 @@ _mvn() opts="-am|-amd|-B|-C|-c|-cpu|-D|-e|-emp|-ep|-f|-fae|-ff|-fn|-gs|-h|-l|-N|-npr|-npu|-nsu|-o|-P|-pl|-q|-rf|-s|-T|-t|-U|-up|-V|-v|-X" common_lifecycle_phases="clean|process-resources|compile|process-test-resources|test-compile|test|package|install|deploy|site" - common_plugins="deploy|failsafe|install|site|surefire|checkstyle|javadoc|jxr|pmd|ant|antrun|archetype|assembly|dependency|enforcer|gpg|help|release|repository|source|eclipse|idea|jetty|cargo|jboss|tomcat|exec|versions|war|ear|ejb|android|scm|nexus|repository" + common_plugins="deploy|failsafe|install|site|surefire|checkstyle|javadoc|jxr|pmd|ant|antrun|archetype|assembly|dependency|enforcer|gpg|help|release|repository|source|eclipse|idea|jetty|cargo|jboss|tomcat|exec|versions|war|ear|ejb|android|scm|nexus|repository|sonar" plugin_goals_deploy="deploy:deploy-file" plugin_goals_failsafe="failsafe:integration-test|failsafe:verify" @@ -51,6 +51,8 @@ _mvn() plugin_goals_nexus="nexus:staging-list|nexus:staging-close|nexus:staging-drop|nexus:staging-release|nexus:staging-build-promotion|nexus:staging-profiles-list|nexus:settings-download" plugin_goals_repository="repository:bundle-create|repository:bundle-pack|repository:help" + plugin_goals_sonar="sonar:sonar" + options="-Dmaven.test.skip=true|-DskipTests|-Dmaven.surefire.debug|-DenableCiProfile|-Dpmd.skip=true|-Dcheckstyle.skip=true" profile_settings=`[ -e ~/.m2/settings.xml ] && grep -e "" -A 1 ~/.m2/settings.xml | grep -e ".*" | sed 's/.*/-P/' | sed 's/<\/id>//g'` From f10f097379dc6ce4ea89c3d32c1a634e8dedeff1 Mon Sep 17 00:00:00 2001 From: obazoud Date: Mon, 9 Jan 2012 21:12:09 +0100 Subject: [PATCH 010/104] mvnDebug binding --- bash_completion.bash | 1 + 1 file changed, 1 insertion(+) diff --git a/bash_completion.bash b/bash_completion.bash index a7fc49a..1510fcc 100644 --- a/bash_completion.bash +++ b/bash_completion.bash @@ -94,5 +94,6 @@ _mvn() } complete -o default -F _mvn -o nospace mvn +complete -o default -F _mvn -o nospace mvnDebug COMP_WORDBREAKS=${COMP_WORDBREAKS//:} From 6c23a114c1eda4432f5e1a7dd3eb5b3c64d348bf Mon Sep 17 00:00:00 2001 From: obazoud Date: Mon, 9 Jan 2012 21:17:27 +0100 Subject: [PATCH 011/104] Add support for hibernate3 plugin --- bash_completion.bash | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/bash_completion.bash b/bash_completion.bash index a7fc49a..6e75b63 100644 --- a/bash_completion.bash +++ b/bash_completion.bash @@ -8,7 +8,7 @@ _mvn() opts="-am|-amd|-B|-C|-c|-cpu|-D|-e|-emp|-ep|-f|-fae|-ff|-fn|-gs|-h|-l|-N|-npr|-npu|-nsu|-o|-P|-pl|-q|-rf|-s|-T|-t|-U|-up|-V|-v|-X" common_lifecycle_phases="clean|process-resources|compile|process-test-resources|test-compile|test|package|install|deploy|site" - common_plugins="deploy|failsafe|install|site|surefire|checkstyle|javadoc|jxr|pmd|ant|antrun|archetype|assembly|dependency|enforcer|gpg|help|release|repository|source|eclipse|idea|jetty|cargo|jboss|tomcat|exec|versions|war|ear|ejb|android|scm|nexus|repository|sonar" + common_plugins="deploy|failsafe|install|site|surefire|checkstyle|javadoc|jxr|pmd|ant|antrun|archetype|assembly|dependency|enforcer|gpg|help|release|repository|source|eclipse|idea|jetty|cargo|jboss|tomcat|exec|versions|war|ear|ejb|android|scm|nexus|repository|sonar|hibernate3" plugin_goals_deploy="deploy:deploy-file" plugin_goals_failsafe="failsafe:integration-test|failsafe:verify" @@ -52,6 +52,7 @@ _mvn() plugin_goals_repository="repository:bundle-create|repository:bundle-pack|repository:help" plugin_goals_sonar="sonar:sonar" + plugin_goals_hibernate3="hibernate3:hbm2ddl|hibernate3:help" options="-Dmaven.test.skip=true|-DskipTests|-Dmaven.surefire.debug|-DenableCiProfile|-Dpmd.skip=true|-Dcheckstyle.skip=true" From 40ec3d907116ffb1c4050fcfb5cff393af8f5070 Mon Sep 17 00:00:00 2001 From: obazoud Date: Mon, 9 Jan 2012 21:28:33 +0100 Subject: [PATCH 012/104] Add support for tomcat6 and tomcat7 --- bash_completion.bash | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/bash_completion.bash b/bash_completion.bash index a7fc49a..ea2d0d7 100644 --- a/bash_completion.bash +++ b/bash_completion.bash @@ -8,7 +8,7 @@ _mvn() opts="-am|-amd|-B|-C|-c|-cpu|-D|-e|-emp|-ep|-f|-fae|-ff|-fn|-gs|-h|-l|-N|-npr|-npu|-nsu|-o|-P|-pl|-q|-rf|-s|-T|-t|-U|-up|-V|-v|-X" common_lifecycle_phases="clean|process-resources|compile|process-test-resources|test-compile|test|package|install|deploy|site" - common_plugins="deploy|failsafe|install|site|surefire|checkstyle|javadoc|jxr|pmd|ant|antrun|archetype|assembly|dependency|enforcer|gpg|help|release|repository|source|eclipse|idea|jetty|cargo|jboss|tomcat|exec|versions|war|ear|ejb|android|scm|nexus|repository|sonar" + common_plugins="deploy|failsafe|install|site|surefire|checkstyle|javadoc|jxr|pmd|ant|antrun|archetype|assembly|dependency|enforcer|gpg|help|release|repository|source|eclipse|idea|jetty|cargo|jboss|tomcat|tomcat6|tomcat7|exec|versions|war|ear|ejb|android|scm|nexus|repository|sonar" plugin_goals_deploy="deploy:deploy-file" plugin_goals_failsafe="failsafe:integration-test|failsafe:verify" @@ -40,6 +40,8 @@ _mvn() plugin_goals_cargo="cargo:start|cargo:run|cargo:stop|cargo:deploy|cargo:undeploy|cargo:help" plugin_goals_jboss="jboss:start|jboss:stop|jboss:deploy|jboss:undeploy|jboss:redeploy" plugin_goals_tomcat="tomcat:start|tomcat:stop|tomcat:deploy|tomcat:undeploy|tomcat:undeploy" + plugin_goals_tomcat6="tomcat6:run|tomcat6:run-war|tomcat6:run-war-only|tomcat6:stop|tomcat6:deploy|tomcat6:undeploy" + plugin_goals_tomcat7="tomcat7:run|tomcat7:run-war|tomcat7:run-war-only|tomcat7:deploy" plugin_goals_exec="exec:exec|exec:java" plugin_goals_versions="versions:display-dependency-updates|versions:display-plugin-updates|versions:display-property-updates|versions:update-parent|versions:update-properties|versions:update-child-modules|versions:lock-snapshots|versions:unlock-snapshots|versions:resolve-ranges|versions:set|versions:use-releases|versions:use-next-releases|versions:use-latest-releases|versions:use-next-snapshots|versions:use-latest-snapshots|versions:use-next-versions|versions:use-latest-versions|versions:commit|versions:revert" plugin_goals_scm="scm:add|scm:checkin|scm:checkout|scm:update|scm:status" From 84936d0d6fe70eb484462638613b31f255ac8266 Mon Sep 17 00:00:00 2001 From: Evgeny Mandrikov Date: Tue, 10 Jan 2012 13:45:01 +0400 Subject: [PATCH 013/104] Add long options --- bash_completion.bash | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/bash_completion.bash b/bash_completion.bash index a7fc49a..856eede 100644 --- a/bash_completion.bash +++ b/bash_completion.bash @@ -6,6 +6,7 @@ _mvn() prev="${COMP_WORDS[COMP_CWORD-1]}" opts="-am|-amd|-B|-C|-c|-cpu|-D|-e|-emp|-ep|-f|-fae|-ff|-fn|-gs|-h|-l|-N|-npr|-npu|-nsu|-o|-P|-pl|-q|-rf|-s|-T|-t|-U|-up|-V|-v|-X" + long_opts="--also-make|--also-make-dependents|--batch-mode|--strict-checksums|--lax-checksums|--check-plugin-updates|--define|--errors|--encrypt-master-password|--encrypt-password|--file|--fail-at-end|--fail-fast|--fail-never|--global-settings|--help|--log-file|--non-recursive|--no-plugin-registry|--no-plugin-updates|--no-snapshot-updates|--offline|--activate-profiles|--projects|--quiet|--resume-from|--settings|--threads|--toolchains|--update-snapshots|--update-plugins|--show-version|--version|--debug" common_lifecycle_phases="clean|process-resources|compile|process-test-resources|test-compile|test|package|install|deploy|site" common_plugins="deploy|failsafe|install|site|surefire|checkstyle|javadoc|jxr|pmd|ant|antrun|archetype|assembly|dependency|enforcer|gpg|help|release|repository|source|eclipse|idea|jetty|cargo|jboss|tomcat|exec|versions|war|ear|ejb|android|scm|nexus|repository|sonar" @@ -66,6 +67,9 @@ _mvn() elif [[ ${cur} == -P* ]] ; then COMPREPLY=( $(compgen -S ' ' -W "${profile_settings}|${profile_pom}" -- ${cur}) ) + elif [[ ${cur} == --* ]] ; then + COMPREPLY=( $(compgen -W "${long_opts}" -S ' ' -- ${cur}) ) + elif [[ ${cur} == -* ]] ; then COMPREPLY=( $(compgen -W "${opts}" -S ' ' -- ${cur}) ) From 2146a7dacc886a0fec802f8a2650313778c3a16f Mon Sep 17 00:00:00 2001 From: Evgeny Mandrikov Date: Fri, 13 Jan 2012 01:30:30 +0400 Subject: [PATCH 014/104] Add support for license-plugin --- bash_completion.bash | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/bash_completion.bash b/bash_completion.bash index dac118a..5f99af2 100644 --- a/bash_completion.bash +++ b/bash_completion.bash @@ -9,7 +9,7 @@ _mvn() long_opts="--also-make|--also-make-dependents|--batch-mode|--strict-checksums|--lax-checksums|--check-plugin-updates|--define|--errors|--encrypt-master-password|--encrypt-password|--file|--fail-at-end|--fail-fast|--fail-never|--global-settings|--help|--log-file|--non-recursive|--no-plugin-registry|--no-plugin-updates|--no-snapshot-updates|--offline|--activate-profiles|--projects|--quiet|--resume-from|--settings|--threads|--toolchains|--update-snapshots|--update-plugins|--show-version|--version|--debug" common_lifecycle_phases="clean|process-resources|compile|process-test-resources|test-compile|test|package|install|deploy|site" - common_plugins="deploy|failsafe|install|site|surefire|checkstyle|javadoc|jxr|pmd|ant|antrun|archetype|assembly|dependency|enforcer|gpg|help|release|repository|source|eclipse|idea|jetty|cargo|jboss|tomcat|tomcat6|tomcat7|exec|versions|war|ear|ejb|android|scm|nexus|repository|sonar|hibernate3" + common_plugins="deploy|failsafe|install|site|surefire|checkstyle|javadoc|jxr|pmd|ant|antrun|archetype|assembly|dependency|enforcer|gpg|help|release|repository|source|eclipse|idea|jetty|cargo|jboss|tomcat|tomcat6|tomcat7|exec|versions|war|ear|ejb|android|scm|nexus|repository|sonar|license|hibernate3" plugin_goals_deploy="deploy:deploy-file" plugin_goals_failsafe="failsafe:integration-test|failsafe:verify" @@ -55,6 +55,7 @@ _mvn() plugin_goals_repository="repository:bundle-create|repository:bundle-pack|repository:help" plugin_goals_sonar="sonar:sonar" + plugin_goals_license="license:format|license:check" plugin_goals_hibernate3="hibernate3:hbm2ddl|hibernate3:help" options="-Dmaven.test.skip=true|-DskipTests|-Dmaven.surefire.debug|-DenableCiProfile|-Dpmd.skip=true|-Dcheckstyle.skip=true" From 52f3beb517533059dd980cba00e0027e3785970f Mon Sep 17 00:00:00 2001 From: Evgeny Mandrikov Date: Wed, 18 Jan 2012 01:53:05 +0400 Subject: [PATCH 015/104] Add support for -rf option --- bash_completion.bash | 3 +++ 1 file changed, 3 insertions(+) diff --git a/bash_completion.bash b/bash_completion.bash index 5f99af2..6694392 100644 --- a/bash_completion.bash +++ b/bash_completion.bash @@ -84,6 +84,9 @@ _mvn() COMPREPLY=( $(compgen -d -S ',' -- ${cur}) ) fi + elif [[ ${prev} == -rf || ${prev} == --resume-from ]] ; then + COMPREPLY=( $(compgen -d -- ${cur}) ) + elif [[ ${cur} == *:* ]] ; then for plugin in $common_plugins; do if [[ ${cur} == ${plugin}:* ]]; then From 170e43a9b2ca22d850fdbf7339f30380ecc55fd2 Mon Sep 17 00:00:00 2001 From: Juven Xu Date: Thu, 26 Jan 2012 19:45:19 +0800 Subject: [PATCH 016/104] add a space suffix after '-rf' completion users may want command like 'mvn -rf module-a clean install' so the suffix is handy --- bash_completion.bash | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bash_completion.bash b/bash_completion.bash index 6694392..6d0d533 100644 --- a/bash_completion.bash +++ b/bash_completion.bash @@ -85,7 +85,7 @@ _mvn() fi elif [[ ${prev} == -rf || ${prev} == --resume-from ]] ; then - COMPREPLY=( $(compgen -d -- ${cur}) ) + COMPREPLY=( $(compgen -d -S ' ' -- ${cur}) ) elif [[ ${cur} == *:* ]] ; then for plugin in $common_plugins; do From 95dc2c1a90234697dbcd36ff9c561aa6c66dff5e Mon Sep 17 00:00:00 2001 From: Michael Savelyev Date: Thu, 22 Mar 2012 19:51:06 +0400 Subject: [PATCH 017/104] added liquibase plugin --- bash_completion.bash | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/bash_completion.bash b/bash_completion.bash index 6d0d533..aac0d50 100644 --- a/bash_completion.bash +++ b/bash_completion.bash @@ -9,7 +9,7 @@ _mvn() long_opts="--also-make|--also-make-dependents|--batch-mode|--strict-checksums|--lax-checksums|--check-plugin-updates|--define|--errors|--encrypt-master-password|--encrypt-password|--file|--fail-at-end|--fail-fast|--fail-never|--global-settings|--help|--log-file|--non-recursive|--no-plugin-registry|--no-plugin-updates|--no-snapshot-updates|--offline|--activate-profiles|--projects|--quiet|--resume-from|--settings|--threads|--toolchains|--update-snapshots|--update-plugins|--show-version|--version|--debug" common_lifecycle_phases="clean|process-resources|compile|process-test-resources|test-compile|test|package|install|deploy|site" - common_plugins="deploy|failsafe|install|site|surefire|checkstyle|javadoc|jxr|pmd|ant|antrun|archetype|assembly|dependency|enforcer|gpg|help|release|repository|source|eclipse|idea|jetty|cargo|jboss|tomcat|tomcat6|tomcat7|exec|versions|war|ear|ejb|android|scm|nexus|repository|sonar|license|hibernate3" + common_plugins="deploy|failsafe|install|site|surefire|checkstyle|javadoc|jxr|pmd|ant|antrun|archetype|assembly|dependency|enforcer|gpg|help|release|repository|source|eclipse|idea|jetty|cargo|jboss|tomcat|tomcat6|tomcat7|exec|versions|war|ear|ejb|android|scm|nexus|repository|sonar|license|hibernate3|liquibase" plugin_goals_deploy="deploy:deploy-file" plugin_goals_failsafe="failsafe:integration-test|failsafe:verify" @@ -57,6 +57,7 @@ _mvn() plugin_goals_sonar="sonar:sonar" plugin_goals_license="license:format|license:check" plugin_goals_hibernate3="hibernate3:hbm2ddl|hibernate3:help" + plugin_goals_liquibase="liquibase:changelogSync|liquibase:changelogSyncSQL|liquibase:clearCheckSums|liquibase:dbDoc|liquibase:diff|liquibase:dropAll|liquibase:help|liquibase:migrate|liquibase:listLocks|liquibase:migrateSQL|liquibase:releaseLocks|liquibase:rollback|liquibase:rollbackSQL|liquibase:status|liquibase:tag|liquibase:update|liquibase:updateSQL|liquibase:updateTestingRollback" options="-Dmaven.test.skip=true|-DskipTests|-Dmaven.surefire.debug|-DenableCiProfile|-Dpmd.skip=true|-Dcheckstyle.skip=true" From d6baa3e651f9831822876bc3f2d552e0e92aeeb1 Mon Sep 17 00:00:00 2001 From: Michael Savelyev Date: Thu, 22 Mar 2012 19:51:37 +0400 Subject: [PATCH 018/104] fixed assembly plugin --- bash_completion.bash | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bash_completion.bash b/bash_completion.bash index aac0d50..d16d99a 100644 --- a/bash_completion.bash +++ b/bash_completion.bash @@ -25,7 +25,7 @@ _mvn() plugin_goals_ant="ant:ant|ant:clean" plugin_goals_antrun="antrun:run" plugin_goals_archetype="archetype:generate|archetype:create-from-project|archetype:crawl" - plugin_goals_assembly="archetype:single" + plugin_goals_assembly="assembly:single|assembly:assembly" plugin_goals_dependency="dependency:analyze|dependency:list|dependency:resolve|dependency:tree" plugin_goals_enforcer="enforcer:enforce" plugin_goals_gpg="gpg:sign|gpg:sign-and-deploy-file" From a0090fff289e7c04ee261d5e87b876ee53bd92bf Mon Sep 17 00:00:00 2001 From: Evgeny Mandrikov Date: Fri, 13 Apr 2012 12:58:02 +0600 Subject: [PATCH 019/104] Add property '-Dtycho.mode=maven' for Eclipse Tycho It can be used to speedup operations like "mvn clean". --- bash_completion.bash | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bash_completion.bash b/bash_completion.bash index d16d99a..8862a8d 100644 --- a/bash_completion.bash +++ b/bash_completion.bash @@ -59,7 +59,7 @@ _mvn() plugin_goals_hibernate3="hibernate3:hbm2ddl|hibernate3:help" plugin_goals_liquibase="liquibase:changelogSync|liquibase:changelogSyncSQL|liquibase:clearCheckSums|liquibase:dbDoc|liquibase:diff|liquibase:dropAll|liquibase:help|liquibase:migrate|liquibase:listLocks|liquibase:migrateSQL|liquibase:releaseLocks|liquibase:rollback|liquibase:rollbackSQL|liquibase:status|liquibase:tag|liquibase:update|liquibase:updateSQL|liquibase:updateTestingRollback" - options="-Dmaven.test.skip=true|-DskipTests|-Dmaven.surefire.debug|-DenableCiProfile|-Dpmd.skip=true|-Dcheckstyle.skip=true" + options="-Dmaven.test.skip=true|-DskipTests|-Dmaven.surefire.debug|-DenableCiProfile|-Dpmd.skip=true|-Dcheckstyle.skip=true|-Dtycho.mode=maven" profile_settings=`[ -e ~/.m2/settings.xml ] && grep -e "" -A 1 ~/.m2/settings.xml | grep -e ".*" | sed 's/.*/-P/' | sed 's/<\/id>//g'` profile_pom=`[ -e pom.xml ] && grep -e "" -A 1 pom.xml | grep -e ".*" | sed 's/.*/-P/' | sed 's/<\/id>//g'` From 72c2c1c13c97b3c8747a326c7d74403277062f9a Mon Sep 17 00:00:00 2001 From: Martin Westergaard Lassen Date: Thu, 10 May 2012 16:29:00 +0200 Subject: [PATCH 020/104] Added verify target --- bash_completion.bash | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bash_completion.bash b/bash_completion.bash index 8862a8d..cd22e4e 100644 --- a/bash_completion.bash +++ b/bash_completion.bash @@ -8,7 +8,7 @@ _mvn() opts="-am|-amd|-B|-C|-c|-cpu|-D|-e|-emp|-ep|-f|-fae|-ff|-fn|-gs|-h|-l|-N|-npr|-npu|-nsu|-o|-P|-pl|-q|-rf|-s|-T|-t|-U|-up|-V|-v|-X" long_opts="--also-make|--also-make-dependents|--batch-mode|--strict-checksums|--lax-checksums|--check-plugin-updates|--define|--errors|--encrypt-master-password|--encrypt-password|--file|--fail-at-end|--fail-fast|--fail-never|--global-settings|--help|--log-file|--non-recursive|--no-plugin-registry|--no-plugin-updates|--no-snapshot-updates|--offline|--activate-profiles|--projects|--quiet|--resume-from|--settings|--threads|--toolchains|--update-snapshots|--update-plugins|--show-version|--version|--debug" - common_lifecycle_phases="clean|process-resources|compile|process-test-resources|test-compile|test|package|install|deploy|site" + common_lifecycle_phases="clean|process-resources|compile|process-test-resources|test-compile|test|package|verify|install|deploy|site" common_plugins="deploy|failsafe|install|site|surefire|checkstyle|javadoc|jxr|pmd|ant|antrun|archetype|assembly|dependency|enforcer|gpg|help|release|repository|source|eclipse|idea|jetty|cargo|jboss|tomcat|tomcat6|tomcat7|exec|versions|war|ear|ejb|android|scm|nexus|repository|sonar|license|hibernate3|liquibase" plugin_goals_deploy="deploy:deploy-file" From 25d112e9e60e03d8f9f57b0f66bf9f0b006fd807 Mon Sep 17 00:00:00 2001 From: Martin Westergaard Lassen Date: Thu, 10 May 2012 16:34:00 +0200 Subject: [PATCH 021/104] Added flyway plugin goals --- bash_completion.bash | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/bash_completion.bash b/bash_completion.bash index cd22e4e..71943b6 100644 --- a/bash_completion.bash +++ b/bash_completion.bash @@ -9,7 +9,7 @@ _mvn() long_opts="--also-make|--also-make-dependents|--batch-mode|--strict-checksums|--lax-checksums|--check-plugin-updates|--define|--errors|--encrypt-master-password|--encrypt-password|--file|--fail-at-end|--fail-fast|--fail-never|--global-settings|--help|--log-file|--non-recursive|--no-plugin-registry|--no-plugin-updates|--no-snapshot-updates|--offline|--activate-profiles|--projects|--quiet|--resume-from|--settings|--threads|--toolchains|--update-snapshots|--update-plugins|--show-version|--version|--debug" common_lifecycle_phases="clean|process-resources|compile|process-test-resources|test-compile|test|package|verify|install|deploy|site" - common_plugins="deploy|failsafe|install|site|surefire|checkstyle|javadoc|jxr|pmd|ant|antrun|archetype|assembly|dependency|enforcer|gpg|help|release|repository|source|eclipse|idea|jetty|cargo|jboss|tomcat|tomcat6|tomcat7|exec|versions|war|ear|ejb|android|scm|nexus|repository|sonar|license|hibernate3|liquibase" + common_plugins="deploy|failsafe|install|site|surefire|checkstyle|javadoc|jxr|pmd|ant|antrun|archetype|assembly|dependency|enforcer|gpg|help|release|repository|source|eclipse|idea|jetty|cargo|jboss|tomcat|tomcat6|tomcat7|exec|versions|war|ear|ejb|android|scm|nexus|repository|sonar|license|hibernate3|liquibase|flyway" plugin_goals_deploy="deploy:deploy-file" plugin_goals_failsafe="failsafe:integration-test|failsafe:verify" @@ -59,6 +59,8 @@ _mvn() plugin_goals_hibernate3="hibernate3:hbm2ddl|hibernate3:help" plugin_goals_liquibase="liquibase:changelogSync|liquibase:changelogSyncSQL|liquibase:clearCheckSums|liquibase:dbDoc|liquibase:diff|liquibase:dropAll|liquibase:help|liquibase:migrate|liquibase:listLocks|liquibase:migrateSQL|liquibase:releaseLocks|liquibase:rollback|liquibase:rollbackSQL|liquibase:status|liquibase:tag|liquibase:update|liquibase:updateSQL|liquibase:updateTestingRollback" + plugin_goals_flyway="flyway:clean|flyway:history|flyway:init|flyway:migrate|flyway:status|flyway:validate" + options="-Dmaven.test.skip=true|-DskipTests|-Dmaven.surefire.debug|-DenableCiProfile|-Dpmd.skip=true|-Dcheckstyle.skip=true|-Dtycho.mode=maven" profile_settings=`[ -e ~/.m2/settings.xml ] && grep -e "" -A 1 ~/.m2/settings.xml | grep -e ".*" | sed 's/.*/-P/' | sed 's/<\/id>//g'` From 552d1df5243754eb096a3eb45f3c41a58553f0e3 Mon Sep 17 00:00:00 2001 From: Martin Westergaard Lassen Date: Thu, 10 May 2012 16:39:11 +0200 Subject: [PATCH 022/104] Removed empty line --- bash_completion.bash | 1 - 1 file changed, 1 deletion(-) diff --git a/bash_completion.bash b/bash_completion.bash index 71943b6..5ebb52d 100644 --- a/bash_completion.bash +++ b/bash_completion.bash @@ -58,7 +58,6 @@ _mvn() plugin_goals_license="license:format|license:check" plugin_goals_hibernate3="hibernate3:hbm2ddl|hibernate3:help" plugin_goals_liquibase="liquibase:changelogSync|liquibase:changelogSyncSQL|liquibase:clearCheckSums|liquibase:dbDoc|liquibase:diff|liquibase:dropAll|liquibase:help|liquibase:migrate|liquibase:listLocks|liquibase:migrateSQL|liquibase:releaseLocks|liquibase:rollback|liquibase:rollbackSQL|liquibase:status|liquibase:tag|liquibase:update|liquibase:updateSQL|liquibase:updateTestingRollback" - plugin_goals_flyway="flyway:clean|flyway:history|flyway:init|flyway:migrate|flyway:status|flyway:validate" options="-Dmaven.test.skip=true|-DskipTests|-Dmaven.surefire.debug|-DenableCiProfile|-Dpmd.skip=true|-Dcheckstyle.skip=true|-Dtycho.mode=maven" From e0823b855cfd360ef54d2c5a6a7f4f7d5bea4c67 Mon Sep 17 00:00:00 2001 From: Martin Westergaard Lassen Date: Mon, 14 May 2012 10:19:44 +0200 Subject: [PATCH 023/104] Added buildnumber plugin --- bash_completion.bash | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/bash_completion.bash b/bash_completion.bash index 5ebb52d..310511c 100644 --- a/bash_completion.bash +++ b/bash_completion.bash @@ -9,7 +9,7 @@ _mvn() long_opts="--also-make|--also-make-dependents|--batch-mode|--strict-checksums|--lax-checksums|--check-plugin-updates|--define|--errors|--encrypt-master-password|--encrypt-password|--file|--fail-at-end|--fail-fast|--fail-never|--global-settings|--help|--log-file|--non-recursive|--no-plugin-registry|--no-plugin-updates|--no-snapshot-updates|--offline|--activate-profiles|--projects|--quiet|--resume-from|--settings|--threads|--toolchains|--update-snapshots|--update-plugins|--show-version|--version|--debug" common_lifecycle_phases="clean|process-resources|compile|process-test-resources|test-compile|test|package|verify|install|deploy|site" - common_plugins="deploy|failsafe|install|site|surefire|checkstyle|javadoc|jxr|pmd|ant|antrun|archetype|assembly|dependency|enforcer|gpg|help|release|repository|source|eclipse|idea|jetty|cargo|jboss|tomcat|tomcat6|tomcat7|exec|versions|war|ear|ejb|android|scm|nexus|repository|sonar|license|hibernate3|liquibase|flyway" + common_plugins="deploy|failsafe|install|site|surefire|checkstyle|javadoc|jxr|pmd|ant|antrun|archetype|assembly|dependency|enforcer|gpg|help|release|repository|source|eclipse|idea|jetty|cargo|jboss|tomcat|tomcat6|tomcat7|exec|versions|war|ear|ejb|android|scm|buildnumber|nexus|repository|sonar|license|hibernate3|liquibase|flyway" plugin_goals_deploy="deploy:deploy-file" plugin_goals_failsafe="failsafe:integration-test|failsafe:verify" @@ -46,6 +46,7 @@ _mvn() plugin_goals_exec="exec:exec|exec:java" plugin_goals_versions="versions:display-dependency-updates|versions:display-plugin-updates|versions:display-property-updates|versions:update-parent|versions:update-properties|versions:update-child-modules|versions:lock-snapshots|versions:unlock-snapshots|versions:resolve-ranges|versions:set|versions:use-releases|versions:use-next-releases|versions:use-latest-releases|versions:use-next-snapshots|versions:use-latest-snapshots|versions:use-next-versions|versions:use-latest-versions|versions:commit|versions:revert" plugin_goals_scm="scm:add|scm:checkin|scm:checkout|scm:update|scm:status" + plugin_goals_buildnumber="buildnumber:create|buildnumber:create-timestamp|buildnumber:help|buildnumber:hgchangeset" plugin_goals_war="war:war|war:exploded|war:inplace|war:manifest" plugin_goals_ear="ear:ear|ear:generate-application-xml" From f825cd62a812b88b66a5a706194804335da95dff Mon Sep 17 00:00:00 2001 From: Manfred Moser Date: Fri, 25 May 2012 10:38:37 -0700 Subject: [PATCH 024/104] Added new android:devices goal --- bash_completion.bash | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bash_completion.bash b/bash_completion.bash index 310511c..d85843c 100644 --- a/bash_completion.bash +++ b/bash_completion.bash @@ -51,7 +51,7 @@ _mvn() plugin_goals_war="war:war|war:exploded|war:inplace|war:manifest" plugin_goals_ear="ear:ear|ear:generate-application-xml" plugin_goals_ejb="ejb:ejb" - plugin_goals_android="android:apk|android:apklib|android:deploy|android:deploy-dependencies|android:dex|android:emulator-start|android:emulator-stop|android:emulator-stop-all|android:generate-sources|android:help|android:instrument|android:manifest-update|android:pull|android:push|android:redeploy|android:run|android:undeploy|android:unpack|android:version-update|android:zipalign" + plugin_goals_android="android:apk|android:apklib|android:deploy|android:deploy-dependencies|android:dex|android:emulator-start|android:emulator-stop|android:emulator-stop-all|android:generate-sources|android:help|android:instrument|android:manifest-update|android:pull|android:push|android:redeploy|android:run|android:undeploy|android:unpack|android:version-update|android:zipalign|android:devices" plugin_goals_nexus="nexus:staging-list|nexus:staging-close|nexus:staging-drop|nexus:staging-release|nexus:staging-build-promotion|nexus:staging-profiles-list|nexus:settings-download" plugin_goals_repository="repository:bundle-create|repository:bundle-pack|repository:help" From 96468b4066bd16e3a7a0d3d2bcb396d5626d8511 Mon Sep 17 00:00:00 2001 From: Martin Westergaard Lassen Date: Mon, 18 Jun 2012 13:50:35 +0200 Subject: [PATCH 025/104] Added missing Dependency Plugin targets --- bash_completion.bash | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bash_completion.bash b/bash_completion.bash index 310511c..2f7084f 100644 --- a/bash_completion.bash +++ b/bash_completion.bash @@ -26,7 +26,7 @@ _mvn() plugin_goals_antrun="antrun:run" plugin_goals_archetype="archetype:generate|archetype:create-from-project|archetype:crawl" plugin_goals_assembly="assembly:single|assembly:assembly" - plugin_goals_dependency="dependency:analyze|dependency:list|dependency:resolve|dependency:tree" + plugin_goals_dependency="dependency:analyze|dependency:analyze-dep-mgt|dependency:analyze-only|dependency:analyze-report|dependency:build-classpath|dependency:copy|dependency:copy-dependencies|dependency:get|dependency:go-offline|dependency:list|dependency:purge-local-repository|dependency:resolve|dependency:resolve-plugins|dependency:sources|dependency:tree|dependency:unpack|dependency:unpack-dependencies" plugin_goals_enforcer="enforcer:enforce" plugin_goals_gpg="gpg:sign|gpg:sign-and-deploy-file" plugin_goals_help="help:active-profiles|help:all-profiles|help:describe|help:effective-pom|help:effective-settings|help:evaluate|help:expressions|help:system" From fa68f91136bc2a8bc5776168f272ac9210cf9aa1 Mon Sep 17 00:00:00 2001 From: Martin Westergaard Lassen Date: Fri, 22 Jun 2012 10:34:40 +0200 Subject: [PATCH 026/104] Added gwt plugin --- bash_completion.bash | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/bash_completion.bash b/bash_completion.bash index 0c1e7bb..341bde8 100644 --- a/bash_completion.bash +++ b/bash_completion.bash @@ -9,7 +9,7 @@ _mvn() long_opts="--also-make|--also-make-dependents|--batch-mode|--strict-checksums|--lax-checksums|--check-plugin-updates|--define|--errors|--encrypt-master-password|--encrypt-password|--file|--fail-at-end|--fail-fast|--fail-never|--global-settings|--help|--log-file|--non-recursive|--no-plugin-registry|--no-plugin-updates|--no-snapshot-updates|--offline|--activate-profiles|--projects|--quiet|--resume-from|--settings|--threads|--toolchains|--update-snapshots|--update-plugins|--show-version|--version|--debug" common_lifecycle_phases="clean|process-resources|compile|process-test-resources|test-compile|test|package|verify|install|deploy|site" - common_plugins="deploy|failsafe|install|site|surefire|checkstyle|javadoc|jxr|pmd|ant|antrun|archetype|assembly|dependency|enforcer|gpg|help|release|repository|source|eclipse|idea|jetty|cargo|jboss|tomcat|tomcat6|tomcat7|exec|versions|war|ear|ejb|android|scm|buildnumber|nexus|repository|sonar|license|hibernate3|liquibase|flyway" + common_plugins="deploy|failsafe|install|site|surefire|checkstyle|javadoc|jxr|pmd|ant|antrun|archetype|assembly|dependency|enforcer|gpg|help|release|repository|source|eclipse|idea|jetty|cargo|jboss|tomcat|tomcat6|tomcat7|exec|versions|war|ear|ejb|android|scm|buildnumber|nexus|repository|sonar|license|hibernate3|liquibase|flyway|gwt" plugin_goals_deploy="deploy:deploy-file" plugin_goals_failsafe="failsafe:integration-test|failsafe:verify" @@ -60,6 +60,7 @@ _mvn() plugin_goals_hibernate3="hibernate3:hbm2ddl|hibernate3:help" plugin_goals_liquibase="liquibase:changelogSync|liquibase:changelogSyncSQL|liquibase:clearCheckSums|liquibase:dbDoc|liquibase:diff|liquibase:dropAll|liquibase:help|liquibase:migrate|liquibase:listLocks|liquibase:migrateSQL|liquibase:releaseLocks|liquibase:rollback|liquibase:rollbackSQL|liquibase:status|liquibase:tag|liquibase:update|liquibase:updateSQL|liquibase:updateTestingRollback" plugin_goals_flyway="flyway:clean|flyway:history|flyway:init|flyway:migrate|flyway:status|flyway:validate" + plugin_goals_gwt="gwt:browser|gwt:clean|gwt:compile|gwt:compile-report|gwt:css|gwt:debug|gwt:eclipse|gwt:eclipseTest|gwt:generateAsync|gwt:help|gwt:i18n|gwt:mergewebxml|gwt:resources|gwt:run|gwt:sdkInstall|gwt:source-jar|gwt:soyc|gwt:test" options="-Dmaven.test.skip=true|-DskipTests|-Dmaven.surefire.debug|-DenableCiProfile|-Dpmd.skip=true|-Dcheckstyle.skip=true|-Dtycho.mode=maven" From 74997d7270dc737e1e25fc79b24021907988f296 Mon Sep 17 00:00:00 2001 From: Manfred Moser Date: Fri, 17 Aug 2012 15:53:54 -0700 Subject: [PATCH 027/104] Added android:clean goal --- bash_completion.bash | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bash_completion.bash b/bash_completion.bash index 341bde8..30a0976 100644 --- a/bash_completion.bash +++ b/bash_completion.bash @@ -51,7 +51,7 @@ _mvn() plugin_goals_war="war:war|war:exploded|war:inplace|war:manifest" plugin_goals_ear="ear:ear|ear:generate-application-xml" plugin_goals_ejb="ejb:ejb" - plugin_goals_android="android:apk|android:apklib|android:deploy|android:deploy-dependencies|android:dex|android:emulator-start|android:emulator-stop|android:emulator-stop-all|android:generate-sources|android:help|android:instrument|android:manifest-update|android:pull|android:push|android:redeploy|android:run|android:undeploy|android:unpack|android:version-update|android:zipalign|android:devices" + plugin_goals_android="android:apk|android:apklib|android:clean|android:deploy|android:deploy-dependencies|android:dex|android:emulator-start|android:emulator-stop|android:emulator-stop-all|android:generate-sources|android:help|android:instrument|android:manifest-update|android:pull|android:push|android:redeploy|android:run|android:undeploy|android:unpack|android:version-update|android:zipalign|android:devices" plugin_goals_nexus="nexus:staging-list|nexus:staging-close|nexus:staging-drop|nexus:staging-release|nexus:staging-build-promotion|nexus:staging-profiles-list|nexus:settings-download" plugin_goals_repository="repository:bundle-create|repository:bundle-pack|repository:help" From 36c3e538c7c078b00cd9e93d016c14ab97932f06 Mon Sep 17 00:00:00 2001 From: Juven Xu Date: Thu, 20 Sep 2012 00:00:12 +0800 Subject: [PATCH 028/104] fixed #30, Support -Dmaven.javadoc.skip=true --- bash_completion.bash | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bash_completion.bash b/bash_completion.bash index 30a0976..b596f6e 100644 --- a/bash_completion.bash +++ b/bash_completion.bash @@ -62,7 +62,7 @@ _mvn() plugin_goals_flyway="flyway:clean|flyway:history|flyway:init|flyway:migrate|flyway:status|flyway:validate" plugin_goals_gwt="gwt:browser|gwt:clean|gwt:compile|gwt:compile-report|gwt:css|gwt:debug|gwt:eclipse|gwt:eclipseTest|gwt:generateAsync|gwt:help|gwt:i18n|gwt:mergewebxml|gwt:resources|gwt:run|gwt:sdkInstall|gwt:source-jar|gwt:soyc|gwt:test" - options="-Dmaven.test.skip=true|-DskipTests|-Dmaven.surefire.debug|-DenableCiProfile|-Dpmd.skip=true|-Dcheckstyle.skip=true|-Dtycho.mode=maven" + options="-Dmaven.test.skip=true|-DskipTests|-Dmaven.surefire.debug|-DenableCiProfile|-Dpmd.skip=true|-Dcheckstyle.skip=true|-Dtycho.mode=maven|-Dmaven.javadoc.skip=true" profile_settings=`[ -e ~/.m2/settings.xml ] && grep -e "" -A 1 ~/.m2/settings.xml | grep -e ".*" | sed 's/.*/-P/' | sed 's/<\/id>//g'` profile_pom=`[ -e pom.xml ] && grep -e "" -A 1 pom.xml | grep -e ".*" | sed 's/.*/-P/' | sed 's/<\/id>//g'` From 8e833d5286e13a4fc07a4fe1fb7938e6b5a8fd70 Mon Sep 17 00:00:00 2001 From: Jaeho Shin Date: Sat, 6 Oct 2012 15:27:28 -0700 Subject: [PATCH 029/104] Avoided COMP_WORDBREAKS modification Modifying COMP_WORDBREAKS breaks ssh/scp completions (scp host: shrinks to scp /home/dir/ without the host part for example). Found a good answer (http://stackoverflow.com/a/12495480/390044) for this problem, and simply applied the knowledge here. --- bash_completion.bash | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/bash_completion.bash b/bash_completion.bash index b596f6e..d77c88e 100644 --- a/bash_completion.bash +++ b/bash_completion.bash @@ -2,8 +2,7 @@ _mvn() { local cur prev opts COMPREPLY=() - cur="${COMP_WORDS[COMP_CWORD]}" - prev="${COMP_WORDS[COMP_CWORD-1]}" + _get_comp_words_by_ref -n : cur prev opts="-am|-amd|-B|-C|-c|-cpu|-D|-e|-emp|-ep|-f|-fae|-ff|-fn|-gs|-h|-l|-N|-npr|-npu|-nsu|-o|-P|-pl|-q|-rf|-s|-T|-t|-U|-up|-V|-v|-X" long_opts="--also-make|--also-make-dependents|--batch-mode|--strict-checksums|--lax-checksums|--check-plugin-updates|--define|--errors|--encrypt-master-password|--encrypt-password|--file|--fail-at-end|--fail-fast|--fail-never|--global-settings|--help|--log-file|--non-recursive|--no-plugin-registry|--no-plugin-updates|--no-snapshot-updates|--offline|--activate-profiles|--projects|--quiet|--resume-from|--settings|--threads|--toolchains|--update-snapshots|--update-plugins|--show-version|--version|--debug" @@ -106,9 +105,9 @@ _mvn() COMPREPLY=( $(compgen -S ':' -W "${common_plugins}" -- ${cur}) ) fi fi + + __ltrim_colon_completions "$cur" } complete -o default -F _mvn -o nospace mvn complete -o default -F _mvn -o nospace mvnDebug - -COMP_WORDBREAKS=${COMP_WORDBREAKS//:} From 14468d73a988f7ad4d89b2be69ea5888c6e07029 Mon Sep 17 00:00:00 2001 From: Jaeho Shin Date: Sat, 6 Oct 2012 15:29:38 -0700 Subject: [PATCH 030/104] Made variables local, cleaned up whitespaces --- bash_completion.bash | 127 ++++++++++++++++++++++--------------------- 1 file changed, 64 insertions(+), 63 deletions(-) diff --git a/bash_completion.bash b/bash_completion.bash index d77c88e..f9c510c 100644 --- a/bash_completion.bash +++ b/bash_completion.bash @@ -1,70 +1,70 @@ -_mvn() +_mvn() { - local cur prev opts + local cur prev COMPREPLY=() _get_comp_words_by_ref -n : cur prev - opts="-am|-amd|-B|-C|-c|-cpu|-D|-e|-emp|-ep|-f|-fae|-ff|-fn|-gs|-h|-l|-N|-npr|-npu|-nsu|-o|-P|-pl|-q|-rf|-s|-T|-t|-U|-up|-V|-v|-X" - long_opts="--also-make|--also-make-dependents|--batch-mode|--strict-checksums|--lax-checksums|--check-plugin-updates|--define|--errors|--encrypt-master-password|--encrypt-password|--file|--fail-at-end|--fail-fast|--fail-never|--global-settings|--help|--log-file|--non-recursive|--no-plugin-registry|--no-plugin-updates|--no-snapshot-updates|--offline|--activate-profiles|--projects|--quiet|--resume-from|--settings|--threads|--toolchains|--update-snapshots|--update-plugins|--show-version|--version|--debug" - - common_lifecycle_phases="clean|process-resources|compile|process-test-resources|test-compile|test|package|verify|install|deploy|site" - common_plugins="deploy|failsafe|install|site|surefire|checkstyle|javadoc|jxr|pmd|ant|antrun|archetype|assembly|dependency|enforcer|gpg|help|release|repository|source|eclipse|idea|jetty|cargo|jboss|tomcat|tomcat6|tomcat7|exec|versions|war|ear|ejb|android|scm|buildnumber|nexus|repository|sonar|license|hibernate3|liquibase|flyway|gwt" - - plugin_goals_deploy="deploy:deploy-file" - plugin_goals_failsafe="failsafe:integration-test|failsafe:verify" - plugin_goals_install="install:install-file" - plugin_goals_site="site:site|site:deploy|site:run|site:stage|site:stage-deploy" - plugin_goals_surefire="surefire:test" - - plugin_goals_checkstyle="checkstyle:checkstyle|checkstyle:check" - plugin_goals_javadoc="javadoc:javadoc|javadoc:jar|javadoc:aggregate" - plugin_goals_jxr="jxr:jxr" - plugin_goals_pmd="pmd:pmd|pmd:cpd|pmd:check|pmd:cpd-check" - - plugin_goals_ant="ant:ant|ant:clean" - plugin_goals_antrun="antrun:run" - plugin_goals_archetype="archetype:generate|archetype:create-from-project|archetype:crawl" - plugin_goals_assembly="assembly:single|assembly:assembly" - plugin_goals_dependency="dependency:analyze|dependency:analyze-dep-mgt|dependency:analyze-only|dependency:analyze-report|dependency:build-classpath|dependency:copy|dependency:copy-dependencies|dependency:get|dependency:go-offline|dependency:list|dependency:purge-local-repository|dependency:resolve|dependency:resolve-plugins|dependency:sources|dependency:tree|dependency:unpack|dependency:unpack-dependencies" - plugin_goals_enforcer="enforcer:enforce" - plugin_goals_gpg="gpg:sign|gpg:sign-and-deploy-file" - plugin_goals_help="help:active-profiles|help:all-profiles|help:describe|help:effective-pom|help:effective-settings|help:evaluate|help:expressions|help:system" - plugin_goals_release="release:clean|release:prepare|release:rollback|release:perform|release:stage|release:branch|release:update-versions" - plugin_goals_repository="repository:bundle-create|repository:bundle-pack" - plugin_goals_source="source:aggregate|source:jar|source:jar-no-fork" - - plugin_goals_eclipse="eclipse:clean|eclipse:eclipse" - plugin_goals_idea="idea:clean|idea:idea" - - plugin_goals_jetty="jetty:run|jetty:run-exploded" - plugin_goals_cargo="cargo:start|cargo:run|cargo:stop|cargo:deploy|cargo:undeploy|cargo:help" - plugin_goals_jboss="jboss:start|jboss:stop|jboss:deploy|jboss:undeploy|jboss:redeploy" - plugin_goals_tomcat="tomcat:start|tomcat:stop|tomcat:deploy|tomcat:undeploy|tomcat:undeploy" - plugin_goals_tomcat6="tomcat6:run|tomcat6:run-war|tomcat6:run-war-only|tomcat6:stop|tomcat6:deploy|tomcat6:undeploy" - plugin_goals_tomcat7="tomcat7:run|tomcat7:run-war|tomcat7:run-war-only|tomcat7:deploy" - plugin_goals_exec="exec:exec|exec:java" - plugin_goals_versions="versions:display-dependency-updates|versions:display-plugin-updates|versions:display-property-updates|versions:update-parent|versions:update-properties|versions:update-child-modules|versions:lock-snapshots|versions:unlock-snapshots|versions:resolve-ranges|versions:set|versions:use-releases|versions:use-next-releases|versions:use-latest-releases|versions:use-next-snapshots|versions:use-latest-snapshots|versions:use-next-versions|versions:use-latest-versions|versions:commit|versions:revert" - plugin_goals_scm="scm:add|scm:checkin|scm:checkout|scm:update|scm:status" - plugin_goals_buildnumber="buildnumber:create|buildnumber:create-timestamp|buildnumber:help|buildnumber:hgchangeset" - - plugin_goals_war="war:war|war:exploded|war:inplace|war:manifest" - plugin_goals_ear="ear:ear|ear:generate-application-xml" - plugin_goals_ejb="ejb:ejb" - plugin_goals_android="android:apk|android:apklib|android:clean|android:deploy|android:deploy-dependencies|android:dex|android:emulator-start|android:emulator-stop|android:emulator-stop-all|android:generate-sources|android:help|android:instrument|android:manifest-update|android:pull|android:push|android:redeploy|android:run|android:undeploy|android:unpack|android:version-update|android:zipalign|android:devices" - plugin_goals_nexus="nexus:staging-list|nexus:staging-close|nexus:staging-drop|nexus:staging-release|nexus:staging-build-promotion|nexus:staging-profiles-list|nexus:settings-download" - plugin_goals_repository="repository:bundle-create|repository:bundle-pack|repository:help" - - plugin_goals_sonar="sonar:sonar" - plugin_goals_license="license:format|license:check" - plugin_goals_hibernate3="hibernate3:hbm2ddl|hibernate3:help" - plugin_goals_liquibase="liquibase:changelogSync|liquibase:changelogSyncSQL|liquibase:clearCheckSums|liquibase:dbDoc|liquibase:diff|liquibase:dropAll|liquibase:help|liquibase:migrate|liquibase:listLocks|liquibase:migrateSQL|liquibase:releaseLocks|liquibase:rollback|liquibase:rollbackSQL|liquibase:status|liquibase:tag|liquibase:update|liquibase:updateSQL|liquibase:updateTestingRollback" - plugin_goals_flyway="flyway:clean|flyway:history|flyway:init|flyway:migrate|flyway:status|flyway:validate" - plugin_goals_gwt="gwt:browser|gwt:clean|gwt:compile|gwt:compile-report|gwt:css|gwt:debug|gwt:eclipse|gwt:eclipseTest|gwt:generateAsync|gwt:help|gwt:i18n|gwt:mergewebxml|gwt:resources|gwt:run|gwt:sdkInstall|gwt:source-jar|gwt:soyc|gwt:test" - - options="-Dmaven.test.skip=true|-DskipTests|-Dmaven.surefire.debug|-DenableCiProfile|-Dpmd.skip=true|-Dcheckstyle.skip=true|-Dtycho.mode=maven|-Dmaven.javadoc.skip=true" - - profile_settings=`[ -e ~/.m2/settings.xml ] && grep -e "" -A 1 ~/.m2/settings.xml | grep -e ".*" | sed 's/.*/-P/' | sed 's/<\/id>//g'` - profile_pom=`[ -e pom.xml ] && grep -e "" -A 1 pom.xml | grep -e ".*" | sed 's/.*/-P/' | sed 's/<\/id>//g'` + local opts="-am|-amd|-B|-C|-c|-cpu|-D|-e|-emp|-ep|-f|-fae|-ff|-fn|-gs|-h|-l|-N|-npr|-npu|-nsu|-o|-P|-pl|-q|-rf|-s|-T|-t|-U|-up|-V|-v|-X" + local long_opts="--also-make|--also-make-dependents|--batch-mode|--strict-checksums|--lax-checksums|--check-plugin-updates|--define|--errors|--encrypt-master-password|--encrypt-password|--file|--fail-at-end|--fail-fast|--fail-never|--global-settings|--help|--log-file|--non-recursive|--no-plugin-registry|--no-plugin-updates|--no-snapshot-updates|--offline|--activate-profiles|--projects|--quiet|--resume-from|--settings|--threads|--toolchains|--update-snapshots|--update-plugins|--show-version|--version|--debug" + + local common_lifecycle_phases="clean|process-resources|compile|process-test-resources|test-compile|test|package|verify|install|deploy|site" + local common_plugins="deploy|failsafe|install|site|surefire|checkstyle|javadoc|jxr|pmd|ant|antrun|archetype|assembly|dependency|enforcer|gpg|help|release|repository|source|eclipse|idea|jetty|cargo|jboss|tomcat|tomcat6|tomcat7|exec|versions|war|ear|ejb|android|scm|buildnumber|nexus|repository|sonar|license|hibernate3|liquibase|flyway|gwt" + + local plugin_goals_deploy="deploy:deploy-file" + local plugin_goals_failsafe="failsafe:integration-test|failsafe:verify" + local plugin_goals_install="install:install-file" + local plugin_goals_site="site:site|site:deploy|site:run|site:stage|site:stage-deploy" + local plugin_goals_surefire="surefire:test" + + local plugin_goals_checkstyle="checkstyle:checkstyle|checkstyle:check" + local plugin_goals_javadoc="javadoc:javadoc|javadoc:jar|javadoc:aggregate" + local plugin_goals_jxr="jxr:jxr" + local plugin_goals_pmd="pmd:pmd|pmd:cpd|pmd:check|pmd:cpd-check" + + local plugin_goals_ant="ant:ant|ant:clean" + local plugin_goals_antrun="antrun:run" + local plugin_goals_archetype="archetype:generate|archetype:create-from-project|archetype:crawl" + local plugin_goals_assembly="assembly:single|assembly:assembly" + local plugin_goals_dependency="dependency:analyze|dependency:analyze-dep-mgt|dependency:analyze-only|dependency:analyze-report|dependency:build-classpath|dependency:copy|dependency:copy-dependencies|dependency:get|dependency:go-offline|dependency:list|dependency:purge-local-repository|dependency:resolve|dependency:resolve-plugins|dependency:sources|dependency:tree|dependency:unpack|dependency:unpack-dependencies" + local plugin_goals_enforcer="enforcer:enforce" + local plugin_goals_gpg="gpg:sign|gpg:sign-and-deploy-file" + local plugin_goals_help="help:active-profiles|help:all-profiles|help:describe|help:effective-pom|help:effective-settings|help:evaluate|help:expressions|help:system" + local plugin_goals_release="release:clean|release:prepare|release:rollback|release:perform|release:stage|release:branch|release:update-versions" + local plugin_goals_repository="repository:bundle-create|repository:bundle-pack" + local plugin_goals_source="source:aggregate|source:jar|source:jar-no-fork" + + local plugin_goals_eclipse="eclipse:clean|eclipse:eclipse" + local plugin_goals_idea="idea:clean|idea:idea" + + local plugin_goals_jetty="jetty:run|jetty:run-exploded" + local plugin_goals_cargo="cargo:start|cargo:run|cargo:stop|cargo:deploy|cargo:undeploy|cargo:help" + local plugin_goals_jboss="jboss:start|jboss:stop|jboss:deploy|jboss:undeploy|jboss:redeploy" + local plugin_goals_tomcat="tomcat:start|tomcat:stop|tomcat:deploy|tomcat:undeploy|tomcat:undeploy" + local plugin_goals_tomcat6="tomcat6:run|tomcat6:run-war|tomcat6:run-war-only|tomcat6:stop|tomcat6:deploy|tomcat6:undeploy" + local plugin_goals_tomcat7="tomcat7:run|tomcat7:run-war|tomcat7:run-war-only|tomcat7:deploy" + local plugin_goals_exec="exec:exec|exec:java" + local plugin_goals_versions="versions:display-dependency-updates|versions:display-plugin-updates|versions:display-property-updates|versions:update-parent|versions:update-properties|versions:update-child-modules|versions:lock-snapshots|versions:unlock-snapshots|versions:resolve-ranges|versions:set|versions:use-releases|versions:use-next-releases|versions:use-latest-releases|versions:use-next-snapshots|versions:use-latest-snapshots|versions:use-next-versions|versions:use-latest-versions|versions:commit|versions:revert" + local plugin_goals_scm="scm:add|scm:checkin|scm:checkout|scm:update|scm:status" + local plugin_goals_buildnumber="buildnumber:create|buildnumber:create-timestamp|buildnumber:help|buildnumber:hgchangeset" + + local plugin_goals_war="war:war|war:exploded|war:inplace|war:manifest" + local plugin_goals_ear="ear:ear|ear:generate-application-xml" + local plugin_goals_ejb="ejb:ejb" + local plugin_goals_android="android:apk|android:apklib|android:clean|android:deploy|android:deploy-dependencies|android:dex|android:emulator-start|android:emulator-stop|android:emulator-stop-all|android:generate-sources|android:help|android:instrument|android:manifest-update|android:pull|android:push|android:redeploy|android:run|android:undeploy|android:unpack|android:version-update|android:zipalign|android:devices" + local plugin_goals_nexus="nexus:staging-list|nexus:staging-close|nexus:staging-drop|nexus:staging-release|nexus:staging-build-promotion|nexus:staging-profiles-list|nexus:settings-download" + local plugin_goals_repository="repository:bundle-create|repository:bundle-pack|repository:help" + + local plugin_goals_sonar="sonar:sonar" + local plugin_goals_license="license:format|license:check" + local plugin_goals_hibernate3="hibernate3:hbm2ddl|hibernate3:help" + local plugin_goals_liquibase="liquibase:changelogSync|liquibase:changelogSyncSQL|liquibase:clearCheckSums|liquibase:dbDoc|liquibase:diff|liquibase:dropAll|liquibase:help|liquibase:migrate|liquibase:listLocks|liquibase:migrateSQL|liquibase:releaseLocks|liquibase:rollback|liquibase:rollbackSQL|liquibase:status|liquibase:tag|liquibase:update|liquibase:updateSQL|liquibase:updateTestingRollback" + local plugin_goals_flyway="flyway:clean|flyway:history|flyway:init|flyway:migrate|flyway:status|flyway:validate" + local plugin_goals_gwt="gwt:browser|gwt:clean|gwt:compile|gwt:compile-report|gwt:css|gwt:debug|gwt:eclipse|gwt:eclipseTest|gwt:generateAsync|gwt:help|gwt:i18n|gwt:mergewebxml|gwt:resources|gwt:run|gwt:sdkInstall|gwt:source-jar|gwt:soyc|gwt:test" + + local options="-Dmaven.test.skip=true|-DskipTests|-Dmaven.surefire.debug|-DenableCiProfile|-Dpmd.skip=true|-Dcheckstyle.skip=true|-Dtycho.mode=maven|-Dmaven.javadoc.skip=true" + + local profile_settings=`[ -e ~/.m2/settings.xml ] && grep -e "" -A 1 ~/.m2/settings.xml | grep -e ".*" | sed 's/.*/-P/' | sed 's/<\/id>//g'` + local profile_pom=`[ -e pom.xml ] && grep -e "" -A 1 pom.xml | grep -e ".*" | sed 's/.*/-P/' | sed 's/<\/id>//g'` local IFS=$'|\n' @@ -91,6 +91,7 @@ _mvn() COMPREPLY=( $(compgen -d -S ' ' -- ${cur}) ) elif [[ ${cur} == *:* ]] ; then + local plugin for plugin in $common_plugins; do if [[ ${cur} == ${plugin}:* ]]; then var_name="plugin_goals_${plugin}" From 52aa7752c1794d85716edd3d01648118f9fd4b23 Mon Sep 17 00:00:00 2001 From: Oliver Schrenk Date: Wed, 24 Oct 2012 17:07:32 +0300 Subject: [PATCH 031/104] Support -DskipITs to skip integration tests only MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Skip execution of integration tests only, see also http://maven.apache.org/plugins/maven-failsafe-plugin/examples/skipping-test.html --- bash_completion.bash | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bash_completion.bash b/bash_completion.bash index b596f6e..962d20a 100644 --- a/bash_completion.bash +++ b/bash_completion.bash @@ -62,7 +62,7 @@ _mvn() plugin_goals_flyway="flyway:clean|flyway:history|flyway:init|flyway:migrate|flyway:status|flyway:validate" plugin_goals_gwt="gwt:browser|gwt:clean|gwt:compile|gwt:compile-report|gwt:css|gwt:debug|gwt:eclipse|gwt:eclipseTest|gwt:generateAsync|gwt:help|gwt:i18n|gwt:mergewebxml|gwt:resources|gwt:run|gwt:sdkInstall|gwt:source-jar|gwt:soyc|gwt:test" - options="-Dmaven.test.skip=true|-DskipTests|-Dmaven.surefire.debug|-DenableCiProfile|-Dpmd.skip=true|-Dcheckstyle.skip=true|-Dtycho.mode=maven|-Dmaven.javadoc.skip=true" + options="-Dmaven.test.skip=true|-DskipTests|-DskipITs|-Dmaven.surefire.debug|-DenableCiProfile|-Dpmd.skip=true|-Dcheckstyle.skip=true|-Dtycho.mode=maven|-Dmaven.javadoc.skip=true" profile_settings=`[ -e ~/.m2/settings.xml ] && grep -e "" -A 1 ~/.m2/settings.xml | grep -e ".*" | sed 's/.*/-P/' | sed 's/<\/id>//g'` profile_pom=`[ -e pom.xml ] && grep -e "" -A 1 pom.xml | grep -e ".*" | sed 's/.*/-P/' | sed 's/<\/id>//g'` From 183d0b7d60073c37bccd58b0393c20d69bc9f775 Mon Sep 17 00:00:00 2001 From: Manfred Moser Date: Wed, 2 Jan 2013 11:21:27 -0800 Subject: [PATCH 032/104] Update readme.md --- readme.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/readme.md b/readme.md index 31d96a3..6e6fbdd 100644 --- a/readme.md +++ b/readme.md @@ -8,6 +8,9 @@ Maven by default does not distribute with a Bash auto completion script, only [a * Make your login shell load the script automatically by adding the line below to *~/.bash_profile* (note the space after dot): `. ~/.maven_bash_completion.bash` +An example install as a onliner for Debian and other distro is + +`sudo wget https://raw.github.com/juven/maven-bash-completion/master/bash_completion.bash --output-document /etc/bash_completion.d/mvn` ## Usage To list common lifecycle phases: @@ -29,4 +32,4 @@ To list -D options (like -DskipTests): `$ mvn -D[TAB][TAB]` To list available profiles: -`$ mvn -P[TAB][TAB]` \ No newline at end of file +`$ mvn -P[TAB][TAB]` From 75ae6859b3f8fe2d84e5b7b6bb899fd0ca13f29f Mon Sep 17 00:00:00 2001 From: Manfred Moser Date: Wed, 2 Jan 2013 11:22:06 -0800 Subject: [PATCH 033/104] Update readme.md --- readme.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/readme.md b/readme.md index 6e6fbdd..d75f0a2 100644 --- a/readme.md +++ b/readme.md @@ -8,7 +8,7 @@ Maven by default does not distribute with a Bash auto completion script, only [a * Make your login shell load the script automatically by adding the line below to *~/.bash_profile* (note the space after dot): `. ~/.maven_bash_completion.bash` -An example install as a onliner for Debian and other distro is +An example install as a one-line command line call for Debian and other distro is `sudo wget https://raw.github.com/juven/maven-bash-completion/master/bash_completion.bash --output-document /etc/bash_completion.d/mvn` ## Usage From 0ee6c00a9e9a6c1c13d2086135e4077282f27da6 Mon Sep 17 00:00:00 2001 From: Manfred Moser Date: Wed, 23 Jan 2013 13:47:28 -0800 Subject: [PATCH 034/104] Adding enforcer:display-info Useful for debugging --- bash_completion.bash | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bash_completion.bash b/bash_completion.bash index 962d20a..7f5aeb8 100644 --- a/bash_completion.bash +++ b/bash_completion.bash @@ -27,7 +27,7 @@ _mvn() plugin_goals_archetype="archetype:generate|archetype:create-from-project|archetype:crawl" plugin_goals_assembly="assembly:single|assembly:assembly" plugin_goals_dependency="dependency:analyze|dependency:analyze-dep-mgt|dependency:analyze-only|dependency:analyze-report|dependency:build-classpath|dependency:copy|dependency:copy-dependencies|dependency:get|dependency:go-offline|dependency:list|dependency:purge-local-repository|dependency:resolve|dependency:resolve-plugins|dependency:sources|dependency:tree|dependency:unpack|dependency:unpack-dependencies" - plugin_goals_enforcer="enforcer:enforce" + plugin_goals_enforcer="enforcer:enforce|enforcer:display-info" plugin_goals_gpg="gpg:sign|gpg:sign-and-deploy-file" plugin_goals_help="help:active-profiles|help:all-profiles|help:describe|help:effective-pom|help:effective-settings|help:evaluate|help:expressions|help:system" plugin_goals_release="release:clean|release:prepare|release:rollback|release:perform|release:stage|release:branch|release:update-versions" From ce24a7537cf098823d82b25ee5b4be52cee13655 Mon Sep 17 00:00:00 2001 From: Martin Westergaard Lassen Date: Fri, 1 Feb 2013 16:10:59 +0100 Subject: [PATCH 035/104] Added gwt.compiler.skip option. According to https://github.com/gwt-maven-plugin/gwt-maven-plugin/blob/master/src/main/java/org/codehaus/mojo/gwt/shell/CompileMojo.java#L64 gwt compilation can be skipped with -Dgwt.compiler.skip --- bash_completion.bash | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bash_completion.bash b/bash_completion.bash index 7f5aeb8..e56d869 100644 --- a/bash_completion.bash +++ b/bash_completion.bash @@ -62,7 +62,7 @@ _mvn() plugin_goals_flyway="flyway:clean|flyway:history|flyway:init|flyway:migrate|flyway:status|flyway:validate" plugin_goals_gwt="gwt:browser|gwt:clean|gwt:compile|gwt:compile-report|gwt:css|gwt:debug|gwt:eclipse|gwt:eclipseTest|gwt:generateAsync|gwt:help|gwt:i18n|gwt:mergewebxml|gwt:resources|gwt:run|gwt:sdkInstall|gwt:source-jar|gwt:soyc|gwt:test" - options="-Dmaven.test.skip=true|-DskipTests|-DskipITs|-Dmaven.surefire.debug|-DenableCiProfile|-Dpmd.skip=true|-Dcheckstyle.skip=true|-Dtycho.mode=maven|-Dmaven.javadoc.skip=true" + options="-Dmaven.test.skip=true|-DskipTests|-DskipITs|-Dmaven.surefire.debug|-DenableCiProfile|-Dpmd.skip=true|-Dcheckstyle.skip=true|-Dtycho.mode=maven|-Dmaven.javadoc.skip=true|-Dgwt.compiler.skip" profile_settings=`[ -e ~/.m2/settings.xml ] && grep -e "" -A 1 ~/.m2/settings.xml | grep -e ".*" | sed 's/.*/-P/' | sed 's/<\/id>//g'` profile_pom=`[ -e pom.xml ] && grep -e "" -A 1 pom.xml | grep -e ".*" | sed 's/.*/-P/' | sed 's/<\/id>//g'` From 1251bd3c8359931f043e0e56b0b094e632ad7604 Mon Sep 17 00:00:00 2001 From: Juven Xu Date: Fri, 1 Mar 2013 17:03:23 +0800 Subject: [PATCH 036/104] fixed #35, use sed to delete all text after profile id for files transfered from windows, there might be an ^M character at the end of each line --- bash_completion.bash | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/bash_completion.bash b/bash_completion.bash index b596f6e..ac6e169 100644 --- a/bash_completion.bash +++ b/bash_completion.bash @@ -64,8 +64,8 @@ _mvn() options="-Dmaven.test.skip=true|-DskipTests|-Dmaven.surefire.debug|-DenableCiProfile|-Dpmd.skip=true|-Dcheckstyle.skip=true|-Dtycho.mode=maven|-Dmaven.javadoc.skip=true" - profile_settings=`[ -e ~/.m2/settings.xml ] && grep -e "" -A 1 ~/.m2/settings.xml | grep -e ".*" | sed 's/.*/-P/' | sed 's/<\/id>//g'` - profile_pom=`[ -e pom.xml ] && grep -e "" -A 1 pom.xml | grep -e ".*" | sed 's/.*/-P/' | sed 's/<\/id>//g'` + profile_settings=`[ -e ~/.m2/settings.xml ] && grep -e "" -A 1 ~/.m2/settings.xml | grep -e ".*" | sed 's/.*/-P/' | sed 's/<\/id>.*//g'` + profile_pom=`[ -e pom.xml ] && grep -e "" -A 1 pom.xml | grep -e ".*" | sed 's/.*/-P/' | sed 's/<\/id>.*//g'` local IFS=$'|\n' From defbb5544467a2ec8d4b6863aa79b5887e7274fe Mon Sep 17 00:00:00 2001 From: Juven Xu Date: Fri, 26 Apr 2013 16:59:48 +0800 Subject: [PATCH 037/104] fix #37 support multiple profile name --- bash_completion.bash | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/bash_completion.bash b/bash_completion.bash index 6401220..ae123c0 100644 --- a/bash_completion.bash +++ b/bash_completion.bash @@ -64,16 +64,21 @@ _mvn() options="-Dmaven.test.skip=true|-DskipTests|-DskipITs|-Dmaven.surefire.debug|-DenableCiProfile|-Dpmd.skip=true|-Dcheckstyle.skip=true|-Dtycho.mode=maven|-Dmaven.javadoc.skip=true|-Dgwt.compiler.skip" - profile_settings=`[ -e ~/.m2/settings.xml ] && grep -e "" -A 1 ~/.m2/settings.xml | grep -e ".*" | sed 's/.*/-P/' | sed 's/<\/id>.*//g'` - profile_pom=`[ -e pom.xml ] && grep -e "" -A 1 pom.xml | grep -e ".*" | sed 's/.*/-P/' | sed 's/<\/id>.*//g'` + local profile_settings=`[ -e ~/.m2/settings.xml ] && grep -e "" -A 1 ~/.m2/settings.xml | grep -e ".*" | sed 's/.*//' | sed 's/<\/id>.*//g' | tr '\n' '|' ` + local profile_pom=`[ -e pom.xml ] && grep -e "" -A 1 pom.xml | grep -e ".*" | sed 's/.*//' | sed 's/<\/id>.*//g' | tr '\n' '|' ` + local profiles="${profile_settings}|${profile_pom}" local IFS=$'|\n' if [[ ${cur} == -D* ]] ; then COMPREPLY=( $(compgen -S ' ' -W "${options}" -- ${cur}) ) - elif [[ ${cur} == -P* ]] ; then - COMPREPLY=( $(compgen -S ' ' -W "${profile_settings}|${profile_pom}" -- ${cur}) ) + elif [[ ${prev} == -P ]] ; then + if [[ ${cur} == *,* ]] ; then + COMPREPLY=( $(compgen -S ',' -W "${profiles}" -P "${cur%,*}," -- ${cur##*,}) ) + else + COMPREPLY=( $(compgen -S ',' -W "${profiles}" -- ${cur}) ) + fi elif [[ ${cur} == --* ]] ; then COMPREPLY=( $(compgen -W "${long_opts}" -S ' ' -- ${cur}) ) From ef11c0177d208dfed10e928bf698d1d06d0b61cd Mon Sep 17 00:00:00 2001 From: Juven Xu Date: Fri, 26 Apr 2013 17:20:35 +0800 Subject: [PATCH 038/104] docs for reactor completion --- readme.md | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/readme.md b/readme.md index d75f0a2..2f1ab3f 100644 --- a/readme.md +++ b/readme.md @@ -4,13 +4,14 @@ Maven by default does not distribute with a Bash auto completion script, only [a ## Installation -* Download bash_completion.bash and save it to any place you want, like *~/.maven_bash_completion.bash*. -* Make your login shell load the script automatically by adding the line below to *~/.bash_profile* (note the space after dot): +1. Download bash_completion.bash and save it to any place you want, like *~/.maven_bash_completion.bash*. +2. Make your login shell load the script automatically by adding the line below to *~/.bash_profile* (note the space after dot): `. ~/.maven_bash_completion.bash` An example install as a one-line command line call for Debian and other distro is `sudo wget https://raw.github.com/juven/maven-bash-completion/master/bash_completion.bash --output-document /etc/bash_completion.d/mvn` + ## Usage To list common lifecycle phases: @@ -31,5 +32,11 @@ To list available options: To list -D options (like -DskipTests): `$ mvn -D[TAB][TAB]` -To list available profiles: -`$ mvn -P[TAB][TAB]` +To list available profiles (from settings.xml and pom.xml): +`$ mvn -P [TAB][TAB]` +`$ mvn -P myapp-core,[TAB][TAB]` (multiple profles supported) + +To list simple reactor projects: +`$ mvn -pl [TAB][TAB]` +`$ mvn -pl myapp-core,[TAB][TAB]` +`$ mvn -rf [TAB][TAB]` From 43a131681f0bef10bde72925cee82c49cf88a088 Mon Sep 17 00:00:00 2001 From: Artem Kirillov Date: Thu, 2 May 2013 00:28:52 +0400 Subject: [PATCH 039/104] Added Grails Maven plugin support --- bash_completion.bash | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/bash_completion.bash b/bash_completion.bash index 89dfdd2..0e777bb 100644 --- a/bash_completion.bash +++ b/bash_completion.bash @@ -56,7 +56,7 @@ _mvn() local long_opts="--also-make|--also-make-dependents|--batch-mode|--strict-checksums|--lax-checksums|--check-plugin-updates|--define|--errors|--encrypt-master-password|--encrypt-password|--file|--fail-at-end|--fail-fast|--fail-never|--global-settings|--help|--log-file|--non-recursive|--no-plugin-registry|--no-plugin-updates|--no-snapshot-updates|--offline|--activate-profiles|--projects|--quiet|--resume-from|--settings|--threads|--toolchains|--update-snapshots|--update-plugins|--show-version|--version|--debug" local common_lifecycle_phases="clean|process-resources|compile|process-test-resources|test-compile|test|package|verify|install|deploy|site" - local common_plugins="deploy|failsafe|install|site|surefire|checkstyle|javadoc|jxr|pmd|ant|antrun|archetype|assembly|dependency|enforcer|gpg|help|release|repository|source|eclipse|idea|jetty|cargo|jboss|tomcat|tomcat6|tomcat7|exec|versions|war|ear|ejb|android|scm|buildnumber|nexus|repository|sonar|license|hibernate3|liquibase|flyway|gwt" + local common_plugins="deploy|failsafe|install|site|surefire|checkstyle|javadoc|jxr|pmd|ant|antrun|archetype|assembly|dependency|enforcer|gpg|help|release|repository|source|eclipse|idea|jetty|cargo|jboss|tomcat|tomcat6|tomcat7|exec|versions|war|ear|ejb|android|scm|buildnumber|nexus|repository|sonar|license|hibernate3|liquibase|flyway|gwt|grails" local plugin_goals_deploy="deploy:deploy-file" local plugin_goals_failsafe="failsafe:integration-test|failsafe:verify" @@ -108,6 +108,7 @@ _mvn() local plugin_goals_liquibase="liquibase:changelogSync|liquibase:changelogSyncSQL|liquibase:clearCheckSums|liquibase:dbDoc|liquibase:diff|liquibase:dropAll|liquibase:help|liquibase:migrate|liquibase:listLocks|liquibase:migrateSQL|liquibase:releaseLocks|liquibase:rollback|liquibase:rollbackSQL|liquibase:status|liquibase:tag|liquibase:update|liquibase:updateSQL|liquibase:updateTestingRollback" local plugin_goals_flyway="flyway:clean|flyway:history|flyway:init|flyway:migrate|flyway:status|flyway:validate" local plugin_goals_gwt="gwt:browser|gwt:clean|gwt:compile|gwt:compile-report|gwt:css|gwt:debug|gwt:eclipse|gwt:eclipseTest|gwt:generateAsync|gwt:help|gwt:i18n|gwt:mergewebxml|gwt:resources|gwt:run|gwt:sdkInstall|gwt:source-jar|gwt:soyc|gwt:test" + local plugin_goals_grails="grails:clean|grails:config-directories|grails:console|grails:create-controller|grails:create-domain-class|grails:create-integration-test|grails:create-pom|grails:create-script|grails:create-service|grails:create-tag-lib|grails:create-unit-test|grails:exec|grails:generate-all|grails:generate-controller|grails:generate-views|grails:help|grails:init|grails:init-plugin|grails:install-templates|grails:list-plugins|grails:maven-clean|grails:maven-compile|grails:maven-functional-test|grails:maven-grails-app-war|grails:maven-test|grails:maven-war|grails:package|grails:package-plugin|grails:run-app|grails:run-app-https|grails:run-war|grails:set-version|grails:test-app|grails:upgrade|grails:validate|grails:validate-plugin|grails:war" local options="-Dmaven.test.skip=true|-DskipTests|-DskipITs|-Dmaven.surefire.debug|-DenableCiProfile|-Dpmd.skip=true|-Dcheckstyle.skip=true|-Dtycho.mode=maven|-Dmaven.javadoc.skip=true|-Dgwt.compiler.skip" From 80a4c3fcf7eb61a4edb97b302678f6238d70f0b9 Mon Sep 17 00:00:00 2001 From: Juven Xu Date: Thu, 2 May 2013 19:44:03 +0800 Subject: [PATCH 040/104] get plugin names from variables --- bash_completion.bash | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/bash_completion.bash b/bash_completion.bash index 0e777bb..6a05efa 100644 --- a/bash_completion.bash +++ b/bash_completion.bash @@ -56,7 +56,6 @@ _mvn() local long_opts="--also-make|--also-make-dependents|--batch-mode|--strict-checksums|--lax-checksums|--check-plugin-updates|--define|--errors|--encrypt-master-password|--encrypt-password|--file|--fail-at-end|--fail-fast|--fail-never|--global-settings|--help|--log-file|--non-recursive|--no-plugin-registry|--no-plugin-updates|--no-snapshot-updates|--offline|--activate-profiles|--projects|--quiet|--resume-from|--settings|--threads|--toolchains|--update-snapshots|--update-plugins|--show-version|--version|--debug" local common_lifecycle_phases="clean|process-resources|compile|process-test-resources|test-compile|test|package|verify|install|deploy|site" - local common_plugins="deploy|failsafe|install|site|surefire|checkstyle|javadoc|jxr|pmd|ant|antrun|archetype|assembly|dependency|enforcer|gpg|help|release|repository|source|eclipse|idea|jetty|cargo|jboss|tomcat|tomcat6|tomcat7|exec|versions|war|ear|ejb|android|scm|buildnumber|nexus|repository|sonar|license|hibernate3|liquibase|flyway|gwt|grails" local plugin_goals_deploy="deploy:deploy-file" local plugin_goals_failsafe="failsafe:integration-test|failsafe:verify" @@ -110,6 +109,8 @@ _mvn() local plugin_goals_gwt="gwt:browser|gwt:clean|gwt:compile|gwt:compile-report|gwt:css|gwt:debug|gwt:eclipse|gwt:eclipseTest|gwt:generateAsync|gwt:help|gwt:i18n|gwt:mergewebxml|gwt:resources|gwt:run|gwt:sdkInstall|gwt:source-jar|gwt:soyc|gwt:test" local plugin_goals_grails="grails:clean|grails:config-directories|grails:console|grails:create-controller|grails:create-domain-class|grails:create-integration-test|grails:create-pom|grails:create-script|grails:create-service|grails:create-tag-lib|grails:create-unit-test|grails:exec|grails:generate-all|grails:generate-controller|grails:generate-views|grails:help|grails:init|grails:init-plugin|grails:install-templates|grails:list-plugins|grails:maven-clean|grails:maven-compile|grails:maven-functional-test|grails:maven-grails-app-war|grails:maven-test|grails:maven-war|grails:package|grails:package-plugin|grails:run-app|grails:run-app-https|grails:run-war|grails:set-version|grails:test-app|grails:upgrade|grails:validate|grails:validate-plugin|grails:war" + local common_plugins=`compgen -v | grep "^plugin_goals_.*" | sed 's/plugin_goals_//g' | tr '\n' '|'` + local options="-Dmaven.test.skip=true|-DskipTests|-DskipITs|-Dmaven.surefire.debug|-DenableCiProfile|-Dpmd.skip=true|-Dcheckstyle.skip=true|-Dtycho.mode=maven|-Dmaven.javadoc.skip=true|-Dgwt.compiler.skip" local profile_settings=`[ -e ~/.m2/settings.xml ] && grep -e "" -A 1 ~/.m2/settings.xml | grep -e ".*" | sed 's/.*//' | sed 's/<\/id>.*//g' | tr '\n' '|' ` From 5d3575115dbf3f4e3d5833e5fc5a66a385a52b53 Mon Sep 17 00:00:00 2001 From: Juven Xu Date: Thu, 2 May 2013 19:51:00 +0800 Subject: [PATCH 041/104] sort all the plugins --- bash_completion.bash | 67 ++++++++++++++++++++------------------------ 1 file changed, 30 insertions(+), 37 deletions(-) diff --git a/bash_completion.bash b/bash_completion.bash index 6a05efa..b745de2 100644 --- a/bash_completion.bash +++ b/bash_completion.bash @@ -56,58 +56,51 @@ _mvn() local long_opts="--also-make|--also-make-dependents|--batch-mode|--strict-checksums|--lax-checksums|--check-plugin-updates|--define|--errors|--encrypt-master-password|--encrypt-password|--file|--fail-at-end|--fail-fast|--fail-never|--global-settings|--help|--log-file|--non-recursive|--no-plugin-registry|--no-plugin-updates|--no-snapshot-updates|--offline|--activate-profiles|--projects|--quiet|--resume-from|--settings|--threads|--toolchains|--update-snapshots|--update-plugins|--show-version|--version|--debug" local common_lifecycle_phases="clean|process-resources|compile|process-test-resources|test-compile|test|package|verify|install|deploy|site" - - local plugin_goals_deploy="deploy:deploy-file" - local plugin_goals_failsafe="failsafe:integration-test|failsafe:verify" - local plugin_goals_install="install:install-file" - local plugin_goals_site="site:site|site:deploy|site:run|site:stage|site:stage-deploy" - local plugin_goals_surefire="surefire:test" - - local plugin_goals_checkstyle="checkstyle:checkstyle|checkstyle:check" - local plugin_goals_javadoc="javadoc:javadoc|javadoc:jar|javadoc:aggregate" - local plugin_goals_jxr="jxr:jxr" - local plugin_goals_pmd="pmd:pmd|pmd:cpd|pmd:check|pmd:cpd-check" + local plugin_goals_android="android:apk|android:apklib|android:clean|android:deploy|android:deploy-dependencies|android:dex|android:emulator-start|android:emulator-stop|android:emulator-stop-all|android:generate-sources|android:help|android:instrument|android:manifest-update|android:pull|android:push|android:redeploy|android:run|android:undeploy|android:unpack|android:version-update|android:zipalign|android:devices" local plugin_goals_ant="ant:ant|ant:clean" local plugin_goals_antrun="antrun:run" local plugin_goals_archetype="archetype:generate|archetype:create-from-project|archetype:crawl" local plugin_goals_assembly="assembly:single|assembly:assembly" + local plugin_goals_buildnumber="buildnumber:create|buildnumber:create-timestamp|buildnumber:help|buildnumber:hgchangeset" + local plugin_goals_cargo="cargo:start|cargo:run|cargo:stop|cargo:deploy|cargo:undeploy|cargo:help" + local plugin_goals_checkstyle="checkstyle:checkstyle|checkstyle:check" local plugin_goals_dependency="dependency:analyze|dependency:analyze-dep-mgt|dependency:analyze-only|dependency:analyze-report|dependency:build-classpath|dependency:copy|dependency:copy-dependencies|dependency:get|dependency:go-offline|dependency:list|dependency:purge-local-repository|dependency:resolve|dependency:resolve-plugins|dependency:sources|dependency:tree|dependency:unpack|dependency:unpack-dependencies" + local plugin_goals_deploy="deploy:deploy-file" + local plugin_goals_ear="ear:ear|ear:generate-application-xml" + local plugin_goals_eclipse="eclipse:clean|eclipse:eclipse" + local plugin_goals_ejb="ejb:ejb" local plugin_goals_enforcer="enforcer:enforce|enforcer:display-info" + local plugin_goals_exec="exec:exec|exec:java" + local plugin_goals_failsafe="failsafe:integration-test|failsafe:verify" + local plugin_goals_flyway="flyway:clean|flyway:history|flyway:init|flyway:migrate|flyway:status|flyway:validate" local plugin_goals_gpg="gpg:sign|gpg:sign-and-deploy-file" + local plugin_goals_grails="grails:clean|grails:config-directories|grails:console|grails:create-controller|grails:create-domain-class|grails:create-integration-test|grails:create-pom|grails:create-script|grails:create-service|grails:create-tag-lib|grails:create-unit-test|grails:exec|grails:generate-all|grails:generate-controller|grails:generate-views|grails:help|grails:init|grails:init-plugin|grails:install-templates|grails:list-plugins|grails:maven-clean|grails:maven-compile|grails:maven-functional-test|grails:maven-grails-app-war|grails:maven-test|grails:maven-war|grails:package|grails:package-plugin|grails:run-app|grails:run-app-https|grails:run-war|grails:set-version|grails:test-app|grails:upgrade|grails:validate|grails:validate-plugin|grails:war" + local plugin_goals_gwt="gwt:browser|gwt:clean|gwt:compile|gwt:compile-report|gwt:css|gwt:debug|gwt:eclipse|gwt:eclipseTest|gwt:generateAsync|gwt:help|gwt:i18n|gwt:mergewebxml|gwt:resources|gwt:run|gwt:sdkInstall|gwt:source-jar|gwt:soyc|gwt:test" local plugin_goals_help="help:active-profiles|help:all-profiles|help:describe|help:effective-pom|help:effective-settings|help:evaluate|help:expressions|help:system" - local plugin_goals_release="release:clean|release:prepare|release:rollback|release:perform|release:stage|release:branch|release:update-versions" - local plugin_goals_repository="repository:bundle-create|repository:bundle-pack" - local plugin_goals_source="source:aggregate|source:jar|source:jar-no-fork" - - local plugin_goals_eclipse="eclipse:clean|eclipse:eclipse" + local plugin_goals_hibernate3="hibernate3:hbm2ddl|hibernate3:help" local plugin_goals_idea="idea:clean|idea:idea" - - local plugin_goals_jetty="jetty:run|jetty:run-exploded" - local plugin_goals_cargo="cargo:start|cargo:run|cargo:stop|cargo:deploy|cargo:undeploy|cargo:help" + local plugin_goals_install="install:install-file" + local plugin_goals_javadoc="javadoc:javadoc|javadoc:jar|javadoc:aggregate" local plugin_goals_jboss="jboss:start|jboss:stop|jboss:deploy|jboss:undeploy|jboss:redeploy" - local plugin_goals_tomcat="tomcat:start|tomcat:stop|tomcat:deploy|tomcat:undeploy|tomcat:undeploy" + local plugin_goals_jetty="jetty:run|jetty:run-exploded" + local plugin_goals_jxr="jxr:jxr" + local plugin_goals_license="license:format|license:check" + local plugin_goals_liquibase="liquibase:changelogSync|liquibase:changelogSyncSQL|liquibase:clearCheckSums|liquibase:dbDoc|liquibase:diff|liquibase:dropAll|liquibase:help|liquibase:migrate|liquibase:listLocks|liquibase:migrateSQL|liquibase:releaseLocks|liquibase:rollback|liquibase:rollbackSQL|liquibase:status|liquibase:tag|liquibase:update|liquibase:updateSQL|liquibase:updateTestingRollback" + local plugin_goals_nexus="nexus:staging-list|nexus:staging-close|nexus:staging-drop|nexus:staging-release|nexus:staging-build-promotion|nexus:staging-profiles-list|nexus:settings-download" + local plugin_goals_pmd="pmd:pmd|pmd:cpd|pmd:check|pmd:cpd-check" + local plugin_goals_release="release:clean|release:prepare|release:rollback|release:perform|release:stage|release:branch|release:update-versions" + local plugin_goals_repository="repository:bundle-create|repository:bundle-pack|repository:help" + local plugin_goals_scm="scm:add|scm:checkin|scm:checkout|scm:update|scm:status" + local plugin_goals_site="site:site|site:deploy|site:run|site:stage|site:stage-deploy" + local plugin_goals_sonar="sonar:sonar" + local plugin_goals_source="source:aggregate|source:jar|source:jar-no-fork" + local plugin_goals_surefire="surefire:test" local plugin_goals_tomcat6="tomcat6:run|tomcat6:run-war|tomcat6:run-war-only|tomcat6:stop|tomcat6:deploy|tomcat6:undeploy" local plugin_goals_tomcat7="tomcat7:run|tomcat7:run-war|tomcat7:run-war-only|tomcat7:deploy" - local plugin_goals_exec="exec:exec|exec:java" + local plugin_goals_tomcat="tomcat:start|tomcat:stop|tomcat:deploy|tomcat:undeploy|tomcat:undeploy" local plugin_goals_versions="versions:display-dependency-updates|versions:display-plugin-updates|versions:display-property-updates|versions:update-parent|versions:update-properties|versions:update-child-modules|versions:lock-snapshots|versions:unlock-snapshots|versions:resolve-ranges|versions:set|versions:use-releases|versions:use-next-releases|versions:use-latest-releases|versions:use-next-snapshots|versions:use-latest-snapshots|versions:use-next-versions|versions:use-latest-versions|versions:commit|versions:revert" - local plugin_goals_scm="scm:add|scm:checkin|scm:checkout|scm:update|scm:status" - local plugin_goals_buildnumber="buildnumber:create|buildnumber:create-timestamp|buildnumber:help|buildnumber:hgchangeset" - local plugin_goals_war="war:war|war:exploded|war:inplace|war:manifest" - local plugin_goals_ear="ear:ear|ear:generate-application-xml" - local plugin_goals_ejb="ejb:ejb" - local plugin_goals_android="android:apk|android:apklib|android:clean|android:deploy|android:deploy-dependencies|android:dex|android:emulator-start|android:emulator-stop|android:emulator-stop-all|android:generate-sources|android:help|android:instrument|android:manifest-update|android:pull|android:push|android:redeploy|android:run|android:undeploy|android:unpack|android:version-update|android:zipalign|android:devices" - local plugin_goals_nexus="nexus:staging-list|nexus:staging-close|nexus:staging-drop|nexus:staging-release|nexus:staging-build-promotion|nexus:staging-profiles-list|nexus:settings-download" - local plugin_goals_repository="repository:bundle-create|repository:bundle-pack|repository:help" - - local plugin_goals_sonar="sonar:sonar" - local plugin_goals_license="license:format|license:check" - local plugin_goals_hibernate3="hibernate3:hbm2ddl|hibernate3:help" - local plugin_goals_liquibase="liquibase:changelogSync|liquibase:changelogSyncSQL|liquibase:clearCheckSums|liquibase:dbDoc|liquibase:diff|liquibase:dropAll|liquibase:help|liquibase:migrate|liquibase:listLocks|liquibase:migrateSQL|liquibase:releaseLocks|liquibase:rollback|liquibase:rollbackSQL|liquibase:status|liquibase:tag|liquibase:update|liquibase:updateSQL|liquibase:updateTestingRollback" - local plugin_goals_flyway="flyway:clean|flyway:history|flyway:init|flyway:migrate|flyway:status|flyway:validate" - local plugin_goals_gwt="gwt:browser|gwt:clean|gwt:compile|gwt:compile-report|gwt:css|gwt:debug|gwt:eclipse|gwt:eclipseTest|gwt:generateAsync|gwt:help|gwt:i18n|gwt:mergewebxml|gwt:resources|gwt:run|gwt:sdkInstall|gwt:source-jar|gwt:soyc|gwt:test" - local plugin_goals_grails="grails:clean|grails:config-directories|grails:console|grails:create-controller|grails:create-domain-class|grails:create-integration-test|grails:create-pom|grails:create-script|grails:create-service|grails:create-tag-lib|grails:create-unit-test|grails:exec|grails:generate-all|grails:generate-controller|grails:generate-views|grails:help|grails:init|grails:init-plugin|grails:install-templates|grails:list-plugins|grails:maven-clean|grails:maven-compile|grails:maven-functional-test|grails:maven-grails-app-war|grails:maven-test|grails:maven-war|grails:package|grails:package-plugin|grails:run-app|grails:run-app-https|grails:run-war|grails:set-version|grails:test-app|grails:upgrade|grails:validate|grails:validate-plugin|grails:war" local common_plugins=`compgen -v | grep "^plugin_goals_.*" | sed 's/plugin_goals_//g' | tr '\n' '|'` From 236cca3a335598b391cf2e3b8c91c2f0794914c7 Mon Sep 17 00:00:00 2001 From: Mathieu Mitchell Date: Wed, 21 Aug 2013 08:50:25 -0400 Subject: [PATCH 042/104] Use all available default lifecycle commands c.f. http://maven.apache.org/guides/introduction/introduction-to-the-lifecycle.html#Lifecycle_Reference --- bash_completion.bash | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) mode change 100644 => 100755 bash_completion.bash diff --git a/bash_completion.bash b/bash_completion.bash old mode 100644 new mode 100755 index b745de2..757f984 --- a/bash_completion.bash +++ b/bash_completion.bash @@ -55,7 +55,10 @@ _mvn() local opts="-am|-amd|-B|-C|-c|-cpu|-D|-e|-emp|-ep|-f|-fae|-ff|-fn|-gs|-h|-l|-N|-npr|-npu|-nsu|-o|-P|-pl|-q|-rf|-s|-T|-t|-U|-up|-V|-v|-X" local long_opts="--also-make|--also-make-dependents|--batch-mode|--strict-checksums|--lax-checksums|--check-plugin-updates|--define|--errors|--encrypt-master-password|--encrypt-password|--file|--fail-at-end|--fail-fast|--fail-never|--global-settings|--help|--log-file|--non-recursive|--no-plugin-registry|--no-plugin-updates|--no-snapshot-updates|--offline|--activate-profiles|--projects|--quiet|--resume-from|--settings|--threads|--toolchains|--update-snapshots|--update-plugins|--show-version|--version|--debug" - local common_lifecycle_phases="clean|process-resources|compile|process-test-resources|test-compile|test|package|verify|install|deploy|site" + local common_clean_lifecycle="pre-clean|clean|post-clean" + local common_default_lifecycle="validate|initialize|generate-sources|process-sources|generate-resources|process-resources|compile|process-classes|generate-test-sources|process-test-sources|generate-test-resources|process-test-resources|test-compile|process-test-classes|test|prepare-package|package|pre-integration-test|integration-test|post-integration-test|verify|install|deploy" + local common_site_lifecycle="pre-site|site|post-site|site-deploy" + local common_lifecycle_phases="${common_clean_lifecycle}|${common_default_lifecycle}|${common_site_lifecycle}" local plugin_goals_android="android:apk|android:apklib|android:clean|android:deploy|android:deploy-dependencies|android:dex|android:emulator-start|android:emulator-stop|android:emulator-stop-all|android:generate-sources|android:help|android:instrument|android:manifest-update|android:pull|android:push|android:redeploy|android:run|android:undeploy|android:unpack|android:version-update|android:zipalign|android:devices" local plugin_goals_ant="ant:ant|ant:clean" From 908878dfc35871c3976fb63d78b2085dd4b6ea43 Mon Sep 17 00:00:00 2001 From: Jerzy Chalupski Date: Thu, 22 Aug 2013 08:27:19 +0200 Subject: [PATCH 043/104] Added cobertura:cobertura goal --- bash_completion.bash | 1 + 1 file changed, 1 insertion(+) diff --git a/bash_completion.bash b/bash_completion.bash index 757f984..0b1cc6b 100755 --- a/bash_completion.bash +++ b/bash_completion.bash @@ -68,6 +68,7 @@ _mvn() local plugin_goals_buildnumber="buildnumber:create|buildnumber:create-timestamp|buildnumber:help|buildnumber:hgchangeset" local plugin_goals_cargo="cargo:start|cargo:run|cargo:stop|cargo:deploy|cargo:undeploy|cargo:help" local plugin_goals_checkstyle="checkstyle:checkstyle|checkstyle:check" + local plugin_goals_cobertura="cobertura:cobertura" local plugin_goals_dependency="dependency:analyze|dependency:analyze-dep-mgt|dependency:analyze-only|dependency:analyze-report|dependency:build-classpath|dependency:copy|dependency:copy-dependencies|dependency:get|dependency:go-offline|dependency:list|dependency:purge-local-repository|dependency:resolve|dependency:resolve-plugins|dependency:sources|dependency:tree|dependency:unpack|dependency:unpack-dependencies" local plugin_goals_deploy="deploy:deploy-file" local plugin_goals_ear="ear:ear|ear:generate-application-xml" From b178a150f0086c5d983a6961cd2dc4e20b788db4 Mon Sep 17 00:00:00 2001 From: kubamarchwicki Date: Mon, 6 Jan 2014 22:03:30 +0100 Subject: [PATCH 044/104] Support for maven profiles with multiple parent pom hierarchy --- bash_completion.bash | 31 +++++++++++++++++++++++++++++-- 1 file changed, 29 insertions(+), 2 deletions(-) diff --git a/bash_completion.bash b/bash_completion.bash index 0b1cc6b..24029dc 100755 --- a/bash_completion.bash +++ b/bash_completion.bash @@ -46,10 +46,31 @@ __ltrim_colon_completions() fi } +function_exists __pom_hierarchy || +__pom_hierarchy() +{ + POM_HIERARCHY+=('pom.xml') + + file="pom.xml" + prefix="" + while grep -q "" "$file"; do + new_file=`grep -e ".*" $file | sed 's/.*//' | sed 's/<\/relativePath>.*//g'` + if [ -z "$new_file" ]; then + file=$prefix"../$file" + else + file=$prefix$new_file + fi + prefix="../"$prefix + POM_HIERARCHY+=("$file") + done +} + _mvn() { local cur prev COMPREPLY=() + POM_HIERARCHY=() + __pom_hierarchy _get_comp_words_by_ref -n : cur prev local opts="-am|-amd|-B|-C|-c|-cpu|-D|-e|-emp|-ep|-f|-fae|-ff|-fn|-gs|-h|-l|-N|-npr|-npu|-nsu|-o|-P|-pl|-q|-rf|-s|-T|-t|-U|-up|-V|-v|-X" @@ -111,8 +132,14 @@ _mvn() local options="-Dmaven.test.skip=true|-DskipTests|-DskipITs|-Dmaven.surefire.debug|-DenableCiProfile|-Dpmd.skip=true|-Dcheckstyle.skip=true|-Dtycho.mode=maven|-Dmaven.javadoc.skip=true|-Dgwt.compiler.skip" local profile_settings=`[ -e ~/.m2/settings.xml ] && grep -e "" -A 1 ~/.m2/settings.xml | grep -e ".*" | sed 's/.*//' | sed 's/<\/id>.*//g' | tr '\n' '|' ` - local profile_pom=`[ -e pom.xml ] && grep -e "" -A 1 pom.xml | grep -e ".*" | sed 's/.*//' | sed 's/<\/id>.*//g' | tr '\n' '|' ` - local profiles="${profile_settings}|${profile_pom}" + + local profiles="${profile_settings}|" + for item in ${POM_HIERARCHY[*]} + do + local profile_pom=`[ -e pom.xml ] && grep -e "" -A 1 $item | grep -e ".*" | sed 's/.*//' | sed 's/<\/id>.*//g' | tr '\n' '|' ` + local profiles="${profiles}|${profile_pom}" + done + local IFS=$'|\n' if [[ ${cur} == -D* ]] ; then From ef7ce6d7a842f96e632f688a4e2bdb945493cba6 Mon Sep 17 00:00:00 2001 From: kubamarchwicki Date: Tue, 7 Jan 2014 22:13:55 +0100 Subject: [PATCH 045/104] #44 cleanly degrade if the parent pom is not in the parent directory but a completely different project --- bash_completion.bash | 30 ++++++++++++++++++------------ 1 file changed, 18 insertions(+), 12 deletions(-) diff --git a/bash_completion.bash b/bash_completion.bash index 24029dc..74c6810 100755 --- a/bash_completion.bash +++ b/bash_completion.bash @@ -49,19 +49,25 @@ __ltrim_colon_completions() function_exists __pom_hierarchy || __pom_hierarchy() { - POM_HIERARCHY+=('pom.xml') - - file="pom.xml" - prefix="" - while grep -q "" "$file"; do + file=`readlink -e pom.xml` + POM_HIERARCHY+=("$file") + while grep -q "" $file; do + ##look for a new relativePath for parent pom.xml new_file=`grep -e ".*" $file | sed 's/.*//' | sed 's/<\/relativePath>.*//g'` - if [ -z "$new_file" ]; then - file=$prefix"../$file" - else - file=$prefix$new_file + + ## is present but not defined. Asume ../pom.xml + if [ -z "$new_file" ]; then + new_file="../pom.xml" + fi + + ## if file exists continue else break + new_pom=`readlink -e "${file%/*}/$new_file"` + if [ -n "$new_pom" ]; then + file=$new_pom + else + break fi - prefix="../"$prefix - POM_HIERARCHY+=("$file") + POM_HIERARCHY+=("$file") done } @@ -136,7 +142,7 @@ _mvn() local profiles="${profile_settings}|" for item in ${POM_HIERARCHY[*]} do - local profile_pom=`[ -e pom.xml ] && grep -e "" -A 1 $item | grep -e ".*" | sed 's/.*//' | sed 's/<\/id>.*//g' | tr '\n' '|' ` + local profile_pom=`[ -e $item ] && grep -e "" -A 1 $item | grep -e ".*" | sed 's/.*//' | sed 's/<\/id>.*//g' | tr '\n' '|' ` local profiles="${profiles}|${profile_pom}" done From d47ee8938bdc88e104c0a9d8968e5ed84d736582 Mon Sep 17 00:00:00 2001 From: kubamarchwicki Date: Sun, 12 Jan 2014 22:06:33 +0100 Subject: [PATCH 046/104] Bug: infinite loop when outside of any maven folder; no pom.xml file --- bash_completion.bash | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bash_completion.bash b/bash_completion.bash index 74c6810..e810959 100755 --- a/bash_completion.bash +++ b/bash_completion.bash @@ -51,7 +51,7 @@ __pom_hierarchy() { file=`readlink -e pom.xml` POM_HIERARCHY+=("$file") - while grep -q "" $file; do + while [ -n "$file" ] && grep -q "" $file; do ##look for a new relativePath for parent pom.xml new_file=`grep -e ".*" $file | sed 's/.*//' | sed 's/<\/relativePath>.*//g'` From b5f8dd6fa937ca7fab81c4899e7c1b802a8a447c Mon Sep 17 00:00:00 2001 From: kubamarchwicki Date: Wed, 22 Jan 2014 00:58:18 +0100 Subject: [PATCH 047/104] Replacing readlink bash command with no dependency bash function --- bash_completion.bash | 33 ++++++++++++++++++++++++++++++--- 1 file changed, 30 insertions(+), 3 deletions(-) diff --git a/bash_completion.bash b/bash_completion.bash index e810959..82ad8f7 100755 --- a/bash_completion.bash +++ b/bash_completion.bash @@ -46,14 +46,41 @@ __ltrim_colon_completions() fi } +function_exists _realpath || +_realpath () +{ + if [[ -f "$1" ]] + then + # file *must* exist + if cd "$(echo "${1%/*}")" &>/dev/null + then + # file *may* not be local + # exception is ./file.ext + # try 'cd .; cd -;' *works!* + local tmppwd="$PWD" + cd - &>/dev/null + else + # file *must* be local + local tmppwd="$PWD" + fi + else + # file *cannot* exist + return 1 # failure + fi + + # reassemble realpath + echo "$tmppwd"/"${1##*/}" + return 1 #success +} + function_exists __pom_hierarchy || __pom_hierarchy() { - file=`readlink -e pom.xml` + local file=`_realpath "pom.xml"` POM_HIERARCHY+=("$file") while [ -n "$file" ] && grep -q "" $file; do ##look for a new relativePath for parent pom.xml - new_file=`grep -e ".*" $file | sed 's/.*//' | sed 's/<\/relativePath>.*//g'` + local new_file=`grep -e ".*" $file | sed 's/.*//' | sed 's/<\/relativePath>.*//g'` ## is present but not defined. Asume ../pom.xml if [ -z "$new_file" ]; then @@ -61,7 +88,7 @@ __pom_hierarchy() fi ## if file exists continue else break - new_pom=`readlink -e "${file%/*}/$new_file"` + new_pom=`_realpath "${file%/*}/$new_file"` if [ -n "$new_pom" ]; then file=$new_pom else From 42e532eb5141cc66d8e49ed208dc252e8f057bbe Mon Sep 17 00:00:00 2001 From: Bartosz Majsak Date: Mon, 24 Feb 2014 20:03:37 +0100 Subject: [PATCH 048/104] Additional options for test execution. * Ability to specify test classes to be executed (-Dtest property) * Build is not failing when specify test is not found (valid for multi-module builds) --- bash_completion.bash | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bash_completion.bash b/bash_completion.bash index 0b1cc6b..29da4c9 100755 --- a/bash_completion.bash +++ b/bash_completion.bash @@ -108,7 +108,7 @@ _mvn() local common_plugins=`compgen -v | grep "^plugin_goals_.*" | sed 's/plugin_goals_//g' | tr '\n' '|'` - local options="-Dmaven.test.skip=true|-DskipTests|-DskipITs|-Dmaven.surefire.debug|-DenableCiProfile|-Dpmd.skip=true|-Dcheckstyle.skip=true|-Dtycho.mode=maven|-Dmaven.javadoc.skip=true|-Dgwt.compiler.skip" + local options="-Dmaven.test.skip=true|-DskipTests|-DskipITs|-Dtest|-DfailIfNoTests|-Dmaven.surefire.debug|-DenableCiProfile|-Dpmd.skip=true|-Dcheckstyle.skip=true|-Dtycho.mode=maven|-Dmaven.javadoc.skip=true|-Dgwt.compiler.skip" local profile_settings=`[ -e ~/.m2/settings.xml ] && grep -e "" -A 1 ~/.m2/settings.xml | grep -e ".*" | sed 's/.*//' | sed 's/<\/id>.*//g' | tr '\n' '|' ` local profile_pom=`[ -e pom.xml ] && grep -e "" -A 1 pom.xml | grep -e ".*" | sed 's/.*//' | sed 's/<\/id>.*//g' | tr '\n' '|' ` From 01ecfb618626a2e867844882d0eab06a1ccbfe5e Mon Sep 17 00:00:00 2001 From: Filipe Peixoto Date: Mon, 24 Mar 2014 08:56:43 -0300 Subject: [PATCH 049/104] Added Google Appengine plugin support --- bash_completion.bash | 1 + 1 file changed, 1 insertion(+) diff --git a/bash_completion.bash b/bash_completion.bash index 29da4c9..36e5e3e 100755 --- a/bash_completion.bash +++ b/bash_completion.bash @@ -60,6 +60,7 @@ _mvn() local common_site_lifecycle="pre-site|site|post-site|site-deploy" local common_lifecycle_phases="${common_clean_lifecycle}|${common_default_lifecycle}|${common_site_lifecycle}" + local plugin_goals_appengine="appengine:backends_configure|appengine:backends_delete|appengine:backends_rollback|appengine:backends_start|appengine:backends_stop|appengine:backends_update|appengine:debug|appengine:devserver|appengine:devserver_start|appengine:devserver_stop|appengine:endpoints_get_client_lib|appengine:endpoints_get_discovery_doc|appengine:enhance|appengine:rollback|appengine:set_default_version|appengine:start_module_version|appengine:stop_module_version|appengine:update|appengine:update_cron|appengine:update_dos|appengine:update_indexes|appengine:update_queues|appengine:vacuum_indexes" local plugin_goals_android="android:apk|android:apklib|android:clean|android:deploy|android:deploy-dependencies|android:dex|android:emulator-start|android:emulator-stop|android:emulator-stop-all|android:generate-sources|android:help|android:instrument|android:manifest-update|android:pull|android:push|android:redeploy|android:run|android:undeploy|android:unpack|android:version-update|android:zipalign|android:devices" local plugin_goals_ant="ant:ant|ant:clean" local plugin_goals_antrun="antrun:run" From d88daa47853a6b7150229eacf8d743437f4a47c1 Mon Sep 17 00:00:00 2001 From: Manfred Moser Date: Mon, 21 Apr 2014 08:58:04 -0700 Subject: [PATCH 050/104] removed deprecated Nexus plugin --- bash_completion.bash | 1 - 1 file changed, 1 deletion(-) diff --git a/bash_completion.bash b/bash_completion.bash index 29da4c9..0dc7f52 100755 --- a/bash_completion.bash +++ b/bash_completion.bash @@ -91,7 +91,6 @@ _mvn() local plugin_goals_jxr="jxr:jxr" local plugin_goals_license="license:format|license:check" local plugin_goals_liquibase="liquibase:changelogSync|liquibase:changelogSyncSQL|liquibase:clearCheckSums|liquibase:dbDoc|liquibase:diff|liquibase:dropAll|liquibase:help|liquibase:migrate|liquibase:listLocks|liquibase:migrateSQL|liquibase:releaseLocks|liquibase:rollback|liquibase:rollbackSQL|liquibase:status|liquibase:tag|liquibase:update|liquibase:updateSQL|liquibase:updateTestingRollback" - local plugin_goals_nexus="nexus:staging-list|nexus:staging-close|nexus:staging-drop|nexus:staging-release|nexus:staging-build-promotion|nexus:staging-profiles-list|nexus:settings-download" local plugin_goals_pmd="pmd:pmd|pmd:cpd|pmd:check|pmd:cpd-check" local plugin_goals_release="release:clean|release:prepare|release:rollback|release:perform|release:stage|release:branch|release:update-versions" local plugin_goals_repository="repository:bundle-create|repository:bundle-pack|repository:help" From 4438b07e1edf0b8cb3f2392223051720b5c25970 Mon Sep 17 00:00:00 2001 From: "juven.xuxb" Date: Wed, 23 Apr 2014 19:56:20 +0800 Subject: [PATCH 051/104] fix #48, jboss-as is a bit weird because there is a '-' in plugin prefix --- bash_completion.bash | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/bash_completion.bash b/bash_completion.bash index 0dc7f52..158bdf5 100755 --- a/bash_completion.bash +++ b/bash_completion.bash @@ -87,6 +87,7 @@ _mvn() local plugin_goals_install="install:install-file" local plugin_goals_javadoc="javadoc:javadoc|javadoc:jar|javadoc:aggregate" local plugin_goals_jboss="jboss:start|jboss:stop|jboss:deploy|jboss:undeploy|jboss:redeploy" + local plugin_goals_jboss_as="jboss-as:add-resource|jboss-as:deploy|jboss-as:deploy-only|jboss-as:deploy-artifact|jboss-as:redeploy|jboss-as:redeploy-only|jboss-as:undeploy|jboss-as:run|jboss-as:start|jboss-as:shutdown|jboss-as:execute-commands" local plugin_goals_jetty="jetty:run|jetty:run-exploded" local plugin_goals_jxr="jxr:jxr" local plugin_goals_license="license:format|license:check" @@ -105,7 +106,8 @@ _mvn() local plugin_goals_versions="versions:display-dependency-updates|versions:display-plugin-updates|versions:display-property-updates|versions:update-parent|versions:update-properties|versions:update-child-modules|versions:lock-snapshots|versions:unlock-snapshots|versions:resolve-ranges|versions:set|versions:use-releases|versions:use-next-releases|versions:use-latest-releases|versions:use-next-snapshots|versions:use-latest-snapshots|versions:use-next-versions|versions:use-latest-versions|versions:commit|versions:revert" local plugin_goals_war="war:war|war:exploded|war:inplace|war:manifest" - local common_plugins=`compgen -v | grep "^plugin_goals_.*" | sed 's/plugin_goals_//g' | tr '\n' '|'` + ## some plugin (like jboss-as) has '-' which is not allowed in shell var name, to use '_' then replace + local common_plugins=`compgen -v | grep "^plugin_goals_.*" | sed 's/plugin_goals_//g' | tr '_' '-' | tr '\n' '|'` local options="-Dmaven.test.skip=true|-DskipTests|-DskipITs|-Dtest|-DfailIfNoTests|-Dmaven.surefire.debug|-DenableCiProfile|-Dpmd.skip=true|-Dcheckstyle.skip=true|-Dtycho.mode=maven|-Dmaven.javadoc.skip=true|-Dgwt.compiler.skip" @@ -144,7 +146,8 @@ _mvn() local plugin for plugin in $common_plugins; do if [[ ${cur} == ${plugin}:* ]]; then - var_name="plugin_goals_${plugin}" + ## note that here is an 'unreplace', see the comment at common_plugins + var_name="plugin_goals_${plugin//-/_}" COMPREPLY=( $(compgen -W "${!var_name}" -S ' ' -- ${cur}) ) fi done From 87512bf4307f212058d24b789de0709e6aad92be Mon Sep 17 00:00:00 2001 From: Manfred Moser Date: Wed, 23 Apr 2014 13:19:56 -0700 Subject: [PATCH 052/104] added nexus-staging-maven-plugin --- bash_completion.bash | 1 + 1 file changed, 1 insertion(+) diff --git a/bash_completion.bash b/bash_completion.bash index 158bdf5..6e8b61b 100755 --- a/bash_completion.bash +++ b/bash_completion.bash @@ -92,6 +92,7 @@ _mvn() local plugin_goals_jxr="jxr:jxr" local plugin_goals_license="license:format|license:check" local plugin_goals_liquibase="liquibase:changelogSync|liquibase:changelogSyncSQL|liquibase:clearCheckSums|liquibase:dbDoc|liquibase:diff|liquibase:dropAll|liquibase:help|liquibase:migrate|liquibase:listLocks|liquibase:migrateSQL|liquibase:releaseLocks|liquibase:rollback|liquibase:rollbackSQL|liquibase:status|liquibase:tag|liquibase:update|liquibase:updateSQL|liquibase:updateTestingRollback" + local plugin_goals_nexus_staging="nexus-staging:close|nexus-staging:deploy|nexus-staging:deploy-staged|nexus-staging:deploy-staged-repository|nexus-staging:drop|nexus-staging:help|nexus-staging:promote|nexus-staging:rc-close|nexus-staging:rc-drop|nexus-staging:rc-list|nexus-staging:rc-list-profiles|nexus-staging:rc-promote|nexus-staging:rc-release|nexus-staging:release" local plugin_goals_pmd="pmd:pmd|pmd:cpd|pmd:check|pmd:cpd-check" local plugin_goals_release="release:clean|release:prepare|release:rollback|release:perform|release:stage|release:branch|release:update-versions" local plugin_goals_repository="repository:bundle-create|repository:bundle-pack|repository:help" From 73e55c3144d4683210a67ef67f1130dcc0f7404d Mon Sep 17 00:00:00 2001 From: Caspar Krieger Date: Tue, 13 May 2014 09:46:30 +1000 Subject: [PATCH 053/104] Have -pl only complete maven projects --- bash_completion.bash | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/bash_completion.bash b/bash_completion.bash index 6e8b61b..3d47f5b 100755 --- a/bash_completion.bash +++ b/bash_completion.bash @@ -46,6 +46,20 @@ __ltrim_colon_completions() fi } +function_exists __find_mvn_projects || +__find_mvn_projects() +{ + find -name 'pom.xml' -not -path '*/target/*' -prune | while read LINE ; do + local withoutPom=${LINE%/pom.xml} + local module=${withoutPom#./} + if [[ -z ${module} ]]; then + echo "." + else + echo ${module} + fi + done +} + _mvn() { local cur prev @@ -135,9 +149,9 @@ _mvn() elif [[ ${prev} == -pl ]] ; then if [[ ${cur} == *,* ]] ; then - COMPREPLY=( $(compgen -d -S ',' -P "${cur%,*}," -- ${cur##*,}) ) + COMPREPLY=( $(compgen -W "$(__find_mvn_projects)" -S ',' -P "${cur%,*}," -- ${cur##*,}) ) else - COMPREPLY=( $(compgen -d -S ',' -- ${cur}) ) + COMPREPLY=( $(compgen -W "$(__find_mvn_projects)" -S ',' -- ${cur}) ) fi elif [[ ${prev} == -rf || ${prev} == --resume-from ]] ; then From bd688711a9a1150625f33db18aa21ff66dbc1f37 Mon Sep 17 00:00:00 2001 From: Kidlike Date: Tue, 13 May 2014 16:22:12 +0100 Subject: [PATCH 054/104] enrich -D options --- bash_completion.bash | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bash_completion.bash b/bash_completion.bash index 6e8b61b..41718f1 100755 --- a/bash_completion.bash +++ b/bash_completion.bash @@ -110,7 +110,7 @@ _mvn() ## some plugin (like jboss-as) has '-' which is not allowed in shell var name, to use '_' then replace local common_plugins=`compgen -v | grep "^plugin_goals_.*" | sed 's/plugin_goals_//g' | tr '_' '-' | tr '\n' '|'` - local options="-Dmaven.test.skip=true|-DskipTests|-DskipITs|-Dtest|-DfailIfNoTests|-Dmaven.surefire.debug|-DenableCiProfile|-Dpmd.skip=true|-Dcheckstyle.skip=true|-Dtycho.mode=maven|-Dmaven.javadoc.skip=true|-Dgwt.compiler.skip" + local options="-Dmaven.test.skip=true|-DskipTests|-DskipITs|-Dtest|-DfailIfNoTests|-Dmaven.surefire.debug|-DenableCiProfile|-Dpmd.skip=true|-Dcheckstyle.skip=true|-Dtycho.mode=maven|-Dmaven.javadoc.skip=true|-Dgwt.compiler.skip|-Dcobertura.skip=true|-Dfindbugs.skip=true" local profile_settings=`[ -e ~/.m2/settings.xml ] && grep -e "" -A 1 ~/.m2/settings.xml | grep -e ".*" | sed 's/.*//' | sed 's/<\/id>.*//g' | tr '\n' '|' ` local profile_pom=`[ -e pom.xml ] && grep -e "" -A 1 pom.xml | grep -e ".*" | sed 's/.*//' | sed 's/<\/id>.*//g' | tr '\n' '|' ` From fcb82ccb5af908c73be1bf61cb1eaed62ab7cec5 Mon Sep 17 00:00:00 2001 From: Florian Boulay Date: Fri, 30 May 2014 10:45:40 +0200 Subject: [PATCH 055/104] Added vert.x maven plugin support --- bash_completion.bash | 1 + 1 file changed, 1 insertion(+) diff --git a/bash_completion.bash b/bash_completion.bash index 41718f1..d0b4664 100755 --- a/bash_completion.bash +++ b/bash_completion.bash @@ -105,6 +105,7 @@ _mvn() local plugin_goals_tomcat7="tomcat7:run|tomcat7:run-war|tomcat7:run-war-only|tomcat7:deploy" local plugin_goals_tomcat="tomcat:start|tomcat:stop|tomcat:deploy|tomcat:undeploy|tomcat:undeploy" local plugin_goals_versions="versions:display-dependency-updates|versions:display-plugin-updates|versions:display-property-updates|versions:update-parent|versions:update-properties|versions:update-child-modules|versions:lock-snapshots|versions:unlock-snapshots|versions:resolve-ranges|versions:set|versions:use-releases|versions:use-next-releases|versions:use-latest-releases|versions:use-next-snapshots|versions:use-latest-snapshots|versions:use-next-versions|versions:use-latest-versions|versions:commit|versions:revert" + local plugin_goals_vertx="vertx:init|vertx:runmod|vertx:pullindeps" local plugin_goals_war="war:war|war:exploded|war:inplace|war:manifest" ## some plugin (like jboss-as) has '-' which is not allowed in shell var name, to use '_' then replace From d1a2a05b4381c4f87ab77585799bde4eb4816138 Mon Sep 17 00:00:00 2001 From: Florian Boulay Date: Fri, 30 May 2014 11:42:40 +0200 Subject: [PATCH 056/104] Fixed goals for vert.x maven plugin --- bash_completion.bash | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bash_completion.bash b/bash_completion.bash index d0b4664..5fbc4fc 100755 --- a/bash_completion.bash +++ b/bash_completion.bash @@ -105,7 +105,7 @@ _mvn() local plugin_goals_tomcat7="tomcat7:run|tomcat7:run-war|tomcat7:run-war-only|tomcat7:deploy" local plugin_goals_tomcat="tomcat:start|tomcat:stop|tomcat:deploy|tomcat:undeploy|tomcat:undeploy" local plugin_goals_versions="versions:display-dependency-updates|versions:display-plugin-updates|versions:display-property-updates|versions:update-parent|versions:update-properties|versions:update-child-modules|versions:lock-snapshots|versions:unlock-snapshots|versions:resolve-ranges|versions:set|versions:use-releases|versions:use-next-releases|versions:use-latest-releases|versions:use-next-snapshots|versions:use-latest-snapshots|versions:use-next-versions|versions:use-latest-versions|versions:commit|versions:revert" - local plugin_goals_vertx="vertx:init|vertx:runmod|vertx:pullindeps" + local plugin_goals_vertx="vertx:init|vertx:runMod|vertx:pullInDeps|vert:fatJar" local plugin_goals_war="war:war|war:exploded|war:inplace|war:manifest" ## some plugin (like jboss-as) has '-' which is not allowed in shell var name, to use '_' then replace From 9ababb43b36b2304d0ee384465cffee8c6315d8b Mon Sep 17 00:00:00 2001 From: Caspar Krieger Date: Wed, 11 Jun 2014 16:29:43 +1000 Subject: [PATCH 057/104] Make project completion work on OSX --- bash_completion.bash | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bash_completion.bash b/bash_completion.bash index 3d47f5b..33d35e5 100755 --- a/bash_completion.bash +++ b/bash_completion.bash @@ -49,7 +49,7 @@ __ltrim_colon_completions() function_exists __find_mvn_projects || __find_mvn_projects() { - find -name 'pom.xml' -not -path '*/target/*' -prune | while read LINE ; do + find . -name 'pom.xml' -not -path '*/target/*' -prune | while read LINE ; do local withoutPom=${LINE%/pom.xml} local module=${withoutPom#./} if [[ -z ${module} ]]; then From d664b8ad5ffaaaf5b21d8d9bb8b3fe4fe4bba9f2 Mon Sep 17 00:00:00 2001 From: Dmitry Malchikov Date: Fri, 13 Jun 2014 17:18:58 +0200 Subject: [PATCH 058/104] Added jacoco maven plugin --- bash_completion.bash | 1 + 1 file changed, 1 insertion(+) diff --git a/bash_completion.bash b/bash_completion.bash index 0c330db..b226b91 100755 --- a/bash_completion.bash +++ b/bash_completion.bash @@ -99,6 +99,7 @@ _mvn() local plugin_goals_hibernate3="hibernate3:hbm2ddl|hibernate3:help" local plugin_goals_idea="idea:clean|idea:idea" local plugin_goals_install="install:install-file" + local plugin_goals_jacoco="jacoco:check|jacoco:dump|jacoco:help|jacoco:instrument|jacoco:merge|jacoco:prepare-agent|jacoco:prepare-agent-integration|jacoco:report|jacoco:report-integration|jacoco:restore-instrumented-classes" local plugin_goals_javadoc="javadoc:javadoc|javadoc:jar|javadoc:aggregate" local plugin_goals_jboss="jboss:start|jboss:stop|jboss:deploy|jboss:undeploy|jboss:redeploy" local plugin_goals_jboss_as="jboss-as:add-resource|jboss-as:deploy|jboss-as:deploy-only|jboss-as:deploy-artifact|jboss-as:redeploy|jboss-as:redeploy-only|jboss-as:undeploy|jboss-as:run|jboss-as:start|jboss-as:shutdown|jboss-as:execute-commands" From 701f1c507a68326f993cb9c4edb152330ac91ddc Mon Sep 17 00:00:00 2001 From: Peter Leibiger Date: Tue, 24 Jun 2014 15:50:11 +0200 Subject: [PATCH 059/104] added gwt:run-codeserver goal --- bash_completion.bash | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bash_completion.bash b/bash_completion.bash index b226b91..ec92dbe 100755 --- a/bash_completion.bash +++ b/bash_completion.bash @@ -94,7 +94,7 @@ _mvn() local plugin_goals_flyway="flyway:clean|flyway:history|flyway:init|flyway:migrate|flyway:status|flyway:validate" local plugin_goals_gpg="gpg:sign|gpg:sign-and-deploy-file" local plugin_goals_grails="grails:clean|grails:config-directories|grails:console|grails:create-controller|grails:create-domain-class|grails:create-integration-test|grails:create-pom|grails:create-script|grails:create-service|grails:create-tag-lib|grails:create-unit-test|grails:exec|grails:generate-all|grails:generate-controller|grails:generate-views|grails:help|grails:init|grails:init-plugin|grails:install-templates|grails:list-plugins|grails:maven-clean|grails:maven-compile|grails:maven-functional-test|grails:maven-grails-app-war|grails:maven-test|grails:maven-war|grails:package|grails:package-plugin|grails:run-app|grails:run-app-https|grails:run-war|grails:set-version|grails:test-app|grails:upgrade|grails:validate|grails:validate-plugin|grails:war" - local plugin_goals_gwt="gwt:browser|gwt:clean|gwt:compile|gwt:compile-report|gwt:css|gwt:debug|gwt:eclipse|gwt:eclipseTest|gwt:generateAsync|gwt:help|gwt:i18n|gwt:mergewebxml|gwt:resources|gwt:run|gwt:sdkInstall|gwt:source-jar|gwt:soyc|gwt:test" + local plugin_goals_gwt="gwt:browser|gwt:clean|gwt:compile|gwt:compile-report|gwt:css|gwt:debug|gwt:eclipse|gwt:eclipseTest|gwt:generateAsync|gwt:help|gwt:i18n|gwt:mergewebxml|gwt:resources|gwt:run|gwt:run-codeserver|gwt:sdkInstall|gwt:source-jar|gwt:soyc|gwt:test" local plugin_goals_help="help:active-profiles|help:all-profiles|help:describe|help:effective-pom|help:effective-settings|help:evaluate|help:expressions|help:system" local plugin_goals_hibernate3="hibernate3:hbm2ddl|hibernate3:help" local plugin_goals_idea="idea:clean|idea:idea" From cf694fca523102a443911b368b23b7f998ff6e87 Mon Sep 17 00:00:00 2001 From: Florian Boulay Date: Mon, 30 Jun 2014 22:29:39 +0200 Subject: [PATCH 060/104] Fix typo for vertx maven plugin --- bash_completion.bash | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bash_completion.bash b/bash_completion.bash index b226b91..2e301df 100755 --- a/bash_completion.bash +++ b/bash_completion.bash @@ -120,7 +120,7 @@ _mvn() local plugin_goals_tomcat7="tomcat7:run|tomcat7:run-war|tomcat7:run-war-only|tomcat7:deploy" local plugin_goals_tomcat="tomcat:start|tomcat:stop|tomcat:deploy|tomcat:undeploy|tomcat:undeploy" local plugin_goals_versions="versions:display-dependency-updates|versions:display-plugin-updates|versions:display-property-updates|versions:update-parent|versions:update-properties|versions:update-child-modules|versions:lock-snapshots|versions:unlock-snapshots|versions:resolve-ranges|versions:set|versions:use-releases|versions:use-next-releases|versions:use-latest-releases|versions:use-next-snapshots|versions:use-latest-snapshots|versions:use-next-versions|versions:use-latest-versions|versions:commit|versions:revert" - local plugin_goals_vertx="vertx:init|vertx:runMod|vertx:pullInDeps|vert:fatJar" + local plugin_goals_vertx="vertx:init|vertx:runMod|vertx:pullInDeps|vertx:fatJar" local plugin_goals_war="war:war|war:exploded|war:inplace|war:manifest" ## some plugin (like jboss-as) has '-' which is not allowed in shell var name, to use '_' then replace From e9b7aecf16c03108e0938e76dd5927b8aaebcaf5 Mon Sep 17 00:00:00 2001 From: kubamarchwicki Date: Mon, 6 Jan 2014 22:03:30 +0100 Subject: [PATCH 061/104] Support for maven profiles with multiple parent pom hierarchy --- bash_completion.bash | 31 +++++++++++++++++++++++++++++-- 1 file changed, 29 insertions(+), 2 deletions(-) diff --git a/bash_completion.bash b/bash_completion.bash index aa086d6..e69acb2 100755 --- a/bash_completion.bash +++ b/bash_completion.bash @@ -60,10 +60,31 @@ __find_mvn_projects() done } +function_exists __pom_hierarchy || +__pom_hierarchy() +{ + POM_HIERARCHY+=('pom.xml') + + file="pom.xml" + prefix="" + while grep -q "" "$file"; do + new_file=`grep -e ".*" $file | sed 's/.*//' | sed 's/<\/relativePath>.*//g'` + if [ -z "$new_file" ]; then + file=$prefix"../$file" + else + file=$prefix$new_file + fi + prefix="../"$prefix + POM_HIERARCHY+=("$file") + done +} + _mvn() { local cur prev COMPREPLY=() + POM_HIERARCHY=() + __pom_hierarchy _get_comp_words_by_ref -n : cur prev local opts="-am|-amd|-B|-C|-c|-cpu|-D|-e|-emp|-ep|-f|-fae|-ff|-fn|-gs|-h|-l|-N|-npr|-npu|-nsu|-o|-P|-pl|-q|-rf|-s|-T|-t|-U|-up|-V|-v|-X" @@ -130,8 +151,14 @@ _mvn() local options="-Dmaven.test.skip=true|-DskipTests|-DskipITs|-Dtest|-DfailIfNoTests|-Dmaven.surefire.debug|-DenableCiProfile|-Dpmd.skip=true|-Dcheckstyle.skip=true|-Dtycho.mode=maven|-Dmaven.javadoc.skip=true|-Dgwt.compiler.skip|-Dcobertura.skip=true|-Dfindbugs.skip=true" local profile_settings=`[ -e ~/.m2/settings.xml ] && grep -e "" -A 1 ~/.m2/settings.xml | grep -e ".*" | sed 's/.*//' | sed 's/<\/id>.*//g' | tr '\n' '|' ` - local profile_pom=`[ -e pom.xml ] && grep -e "" -A 1 pom.xml | grep -e ".*" | sed 's/.*//' | sed 's/<\/id>.*//g' | tr '\n' '|' ` - local profiles="${profile_settings}|${profile_pom}" + + local profiles="${profile_settings}|" + for item in ${POM_HIERARCHY[*]} + do + local profile_pom=`[ -e pom.xml ] && grep -e "" -A 1 $item | grep -e ".*" | sed 's/.*//' | sed 's/<\/id>.*//g' | tr '\n' '|' ` + local profiles="${profiles}|${profile_pom}" + done + local IFS=$'|\n' if [[ ${cur} == -D* ]] ; then From 4d07d362fc1cc714f552376e31f18ab33f193196 Mon Sep 17 00:00:00 2001 From: kubamarchwicki Date: Tue, 7 Jan 2014 22:13:55 +0100 Subject: [PATCH 062/104] #44 cleanly degrade if the parent pom is not in the parent directory but a completely different project --- bash_completion.bash | 30 ++++++++++++++++++------------ 1 file changed, 18 insertions(+), 12 deletions(-) diff --git a/bash_completion.bash b/bash_completion.bash index e69acb2..b42c54f 100755 --- a/bash_completion.bash +++ b/bash_completion.bash @@ -63,19 +63,25 @@ __find_mvn_projects() function_exists __pom_hierarchy || __pom_hierarchy() { - POM_HIERARCHY+=('pom.xml') - - file="pom.xml" - prefix="" - while grep -q "" "$file"; do + file=`readlink -e pom.xml` + POM_HIERARCHY+=("$file") + while grep -q "" $file; do + ##look for a new relativePath for parent pom.xml new_file=`grep -e ".*" $file | sed 's/.*//' | sed 's/<\/relativePath>.*//g'` - if [ -z "$new_file" ]; then - file=$prefix"../$file" - else - file=$prefix$new_file + + ## is present but not defined. Asume ../pom.xml + if [ -z "$new_file" ]; then + new_file="../pom.xml" + fi + + ## if file exists continue else break + new_pom=`readlink -e "${file%/*}/$new_file"` + if [ -n "$new_pom" ]; then + file=$new_pom + else + break fi - prefix="../"$prefix - POM_HIERARCHY+=("$file") + POM_HIERARCHY+=("$file") done } @@ -155,7 +161,7 @@ _mvn() local profiles="${profile_settings}|" for item in ${POM_HIERARCHY[*]} do - local profile_pom=`[ -e pom.xml ] && grep -e "" -A 1 $item | grep -e ".*" | sed 's/.*//' | sed 's/<\/id>.*//g' | tr '\n' '|' ` + local profile_pom=`[ -e $item ] && grep -e "" -A 1 $item | grep -e ".*" | sed 's/.*//' | sed 's/<\/id>.*//g' | tr '\n' '|' ` local profiles="${profiles}|${profile_pom}" done From 1c2b4eec3b52cee4d11174ba365e3ce2fa61c485 Mon Sep 17 00:00:00 2001 From: kubamarchwicki Date: Sun, 12 Jan 2014 22:06:33 +0100 Subject: [PATCH 063/104] Bug: infinite loop when outside of any maven folder; no pom.xml file --- bash_completion.bash | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bash_completion.bash b/bash_completion.bash index b42c54f..6ee8c72 100755 --- a/bash_completion.bash +++ b/bash_completion.bash @@ -65,7 +65,7 @@ __pom_hierarchy() { file=`readlink -e pom.xml` POM_HIERARCHY+=("$file") - while grep -q "" $file; do + while [ -n "$file" ] && grep -q "" $file; do ##look for a new relativePath for parent pom.xml new_file=`grep -e ".*" $file | sed 's/.*//' | sed 's/<\/relativePath>.*//g'` From 20a1458fd8ddf4e638b3da1924df788b96573523 Mon Sep 17 00:00:00 2001 From: kubamarchwicki Date: Wed, 22 Jan 2014 00:58:18 +0100 Subject: [PATCH 064/104] Replacing readlink bash command with no dependency bash function --- bash_completion.bash | 33 ++++++++++++++++++++++++++++++--- 1 file changed, 30 insertions(+), 3 deletions(-) diff --git a/bash_completion.bash b/bash_completion.bash index 6ee8c72..5ce4585 100755 --- a/bash_completion.bash +++ b/bash_completion.bash @@ -60,14 +60,41 @@ __find_mvn_projects() done } +function_exists _realpath || +_realpath () +{ + if [[ -f "$1" ]] + then + # file *must* exist + if cd "$(echo "${1%/*}")" &>/dev/null + then + # file *may* not be local + # exception is ./file.ext + # try 'cd .; cd -;' *works!* + local tmppwd="$PWD" + cd - &>/dev/null + else + # file *must* be local + local tmppwd="$PWD" + fi + else + # file *cannot* exist + return 1 # failure + fi + + # reassemble realpath + echo "$tmppwd"/"${1##*/}" + return 1 #success +} + function_exists __pom_hierarchy || __pom_hierarchy() { - file=`readlink -e pom.xml` + local file=`_realpath "pom.xml"` POM_HIERARCHY+=("$file") while [ -n "$file" ] && grep -q "" $file; do ##look for a new relativePath for parent pom.xml - new_file=`grep -e ".*" $file | sed 's/.*//' | sed 's/<\/relativePath>.*//g'` + local new_file=`grep -e ".*" $file | sed 's/.*//' | sed 's/<\/relativePath>.*//g'` ## is present but not defined. Asume ../pom.xml if [ -z "$new_file" ]; then @@ -75,7 +102,7 @@ __pom_hierarchy() fi ## if file exists continue else break - new_pom=`readlink -e "${file%/*}/$new_file"` + new_pom=`_realpath "${file%/*}/$new_file"` if [ -n "$new_pom" ]; then file=$new_pom else From ee3fb8b2439ead48fd48b4fada997aac9dcd0842 Mon Sep 17 00:00:00 2001 From: olivier bourgain Date: Fri, 11 Jul 2014 03:37:05 +0200 Subject: [PATCH 065/104] add spring boot plugin support --- bash_completion.bash | 1 + 1 file changed, 1 insertion(+) diff --git a/bash_completion.bash b/bash_completion.bash index aa086d6..03bf5de 100755 --- a/bash_completion.bash +++ b/bash_completion.bash @@ -123,6 +123,7 @@ _mvn() local plugin_goals_versions="versions:display-dependency-updates|versions:display-plugin-updates|versions:display-property-updates|versions:update-parent|versions:update-properties|versions:update-child-modules|versions:lock-snapshots|versions:unlock-snapshots|versions:resolve-ranges|versions:set|versions:use-releases|versions:use-next-releases|versions:use-latest-releases|versions:use-next-snapshots|versions:use-latest-snapshots|versions:use-next-versions|versions:use-latest-versions|versions:commit|versions:revert" local plugin_goals_vertx="vertx:init|vertx:runMod|vertx:pullInDeps|vertx:fatJar" local plugin_goals_war="war:war|war:exploded|war:inplace|war:manifest" + local plugin_goals_spring_boot="spring-boot:run|spring-boot:repackage" ## some plugin (like jboss-as) has '-' which is not allowed in shell var name, to use '_' then replace local common_plugins=`compgen -v | grep "^plugin_goals_.*" | sed 's/plugin_goals_//g' | tr '_' '-' | tr '\n' '|'` From eada467fce185cf6b0fbbf189841a427698ede04 Mon Sep 17 00:00:00 2001 From: Matthias Nuessler Date: Sun, 14 Sep 2014 15:02:27 +0200 Subject: [PATCH 066/104] Add installation instructions for MacOS X/Homebrew --- readme.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/readme.md b/readme.md index 2f1ab3f..219a076 100644 --- a/readme.md +++ b/readme.md @@ -12,6 +12,11 @@ An example install as a one-line command line call for Debian and other distro i `sudo wget https://raw.github.com/juven/maven-bash-completion/master/bash_completion.bash --output-document /etc/bash_completion.d/mvn` +Example install for MacOS X using the [Homebrew](http://brew.sh/) package manager: + +1. `brew tap homebrew/completion` (add Git repository with completions to list of formulae, if not already done) +2. `brew install maven-completion` (install maven-completion formula) + ## Usage To list common lifecycle phases: From e204e84efda130bc7c1b6439ed5da843fd76a68d Mon Sep 17 00:00:00 2001 From: Bartosz Majsak Date: Thu, 18 Sep 2014 14:05:17 +0200 Subject: [PATCH 067/104] Added goals for Atlassian's jgitflow plugin --- bash_completion.bash | 1 + 1 file changed, 1 insertion(+) diff --git a/bash_completion.bash b/bash_completion.bash index 03bf5de..d1bb64a 100755 --- a/bash_completion.bash +++ b/bash_completion.bash @@ -124,6 +124,7 @@ _mvn() local plugin_goals_vertx="vertx:init|vertx:runMod|vertx:pullInDeps|vertx:fatJar" local plugin_goals_war="war:war|war:exploded|war:inplace|war:manifest" local plugin_goals_spring_boot="spring-boot:run|spring-boot:repackage" + local plugin_goals_jgitflow="jgitflow:feature-start|jgitflow:feature-finish|jgitflow:release-start|jgitflow:release-finish|jgitflow:hotfix-start|jgitflow:hotfix-finish|jgitflow:build-number" ## some plugin (like jboss-as) has '-' which is not allowed in shell var name, to use '_' then replace local common_plugins=`compgen -v | grep "^plugin_goals_.*" | sed 's/plugin_goals_//g' | tr '_' '-' | tr '\n' '|'` From c38ced2c29c4e6c67fc273813670dff50659fa95 Mon Sep 17 00:00:00 2001 From: Manfred Moser Date: Tue, 23 Sep 2014 08:57:59 -0700 Subject: [PATCH 068/104] Update readme.md --- readme.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/readme.md b/readme.md index 219a076..2c7818b 100644 --- a/readme.md +++ b/readme.md @@ -14,7 +14,7 @@ An example install as a one-line command line call for Debian and other distro i Example install for MacOS X using the [Homebrew](http://brew.sh/) package manager: -1. `brew tap homebrew/completion` (add Git repository with completions to list of formulae, if not already done) +1. `brew tap homebrew/completions` (add Git repository with completions to list of formulae, if not already done) 2. `brew install maven-completion` (install maven-completion formula) ## Usage From 99db59eeb32d4b201d62f0d483f6b2b5996c850b Mon Sep 17 00:00:00 2001 From: "juven.xuxb" Date: Sat, 18 Oct 2014 13:16:32 +0800 Subject: [PATCH 069/104] add faq section --- readme.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/readme.md b/readme.md index 2c7818b..847559d 100644 --- a/readme.md +++ b/readme.md @@ -45,3 +45,8 @@ To list simple reactor projects: `$ mvn -pl [TAB][TAB]` `$ mvn -pl myapp-core,[TAB][TAB]` `$ mvn -rf [TAB][TAB]` + +## FAQ + +Q: I get error message: `__git_reassemble_comp_words_by_ref: command not found` +A: Please install git-bash-completion first. From d9644f32a8995f585ab66746fce242b4cc02ad84 Mon Sep 17 00:00:00 2001 From: "juven.xuxb" Date: Sat, 18 Oct 2014 13:20:20 +0800 Subject: [PATCH 070/104] tweak the install doc a bit --- readme.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/readme.md b/readme.md index 847559d..92c89dd 100644 --- a/readme.md +++ b/readme.md @@ -4,11 +4,13 @@ Maven by default does not distribute with a Bash auto completion script, only [a ## Installation +Example install manually: + 1. Download bash_completion.bash and save it to any place you want, like *~/.maven_bash_completion.bash*. 2. Make your login shell load the script automatically by adding the line below to *~/.bash_profile* (note the space after dot): `. ~/.maven_bash_completion.bash` -An example install as a one-line command line call for Debian and other distro is +Example install as a one-line command line call for Debian and other distro: `sudo wget https://raw.github.com/juven/maven-bash-completion/master/bash_completion.bash --output-document /etc/bash_completion.d/mvn` From ebbb09481f95c17f44780466146897ea714cbe6e Mon Sep 17 00:00:00 2001 From: juven Date: Mon, 20 Oct 2014 20:43:53 +0800 Subject: [PATCH 071/104] naming and format clean up --- bash_completion.bash | 36 ++++++++++++++++++------------------ 1 file changed, 18 insertions(+), 18 deletions(-) diff --git a/bash_completion.bash b/bash_completion.bash index 9244ebc..66d5328 100755 --- a/bash_completion.bash +++ b/bash_completion.bash @@ -90,25 +90,25 @@ _realpath () function_exists __pom_hierarchy || __pom_hierarchy() { - local file=`_realpath "pom.xml"` - POM_HIERARCHY+=("$file") - while [ -n "$file" ] && grep -q "" $file; do - ##look for a new relativePath for parent pom.xml - local new_file=`grep -e ".*" $file | sed 's/.*//' | sed 's/<\/relativePath>.*//g'` - - ## is present but not defined. Asume ../pom.xml - if [ -z "$new_file" ]; then - new_file="../pom.xml" - fi - - ## if file exists continue else break - new_pom=`_realpath "${file%/*}/$new_file"` - if [ -n "$new_pom" ]; then - file=$new_pom - else - break + local pom=`_realpath "pom.xml"` + POM_HIERARCHY+=("$pom") + while [ -n "$pom" ] && grep -q "" $pom; do + ## look for a new relativePath for parent pom.xml + local parent_pom_relative=`grep -e ".*" $pom | sed 's/.*//' | sed 's/<\/relativePath>.*//g'` + + ## is present but not defined, assume ../pom.xml + if [ -z "$parent_pom_relative" ]; then + parent_pom_relative="../pom.xml" + fi + + ## if pom exists continue else break + parent_pom=`_realpath "${pom%/*}/$parent_pom_relative"` + if [ -n "$parent_pom" ]; then + pom=$parent_pom + else + break fi - POM_HIERARCHY+=("$file") + POM_HIERARCHY+=("$pom") done } From b22f363651e7a474a2e7e1fa4d7ddfaec64076c0 Mon Sep 17 00:00:00 2001 From: juven Date: Mon, 20 Oct 2014 20:50:34 +0800 Subject: [PATCH 072/104] fix #45 --- bash_completion.bash | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bash_completion.bash b/bash_completion.bash index 66d5328..4c20913 100755 --- a/bash_completion.bash +++ b/bash_completion.bash @@ -138,7 +138,7 @@ _mvn() local plugin_goals_cargo="cargo:start|cargo:run|cargo:stop|cargo:deploy|cargo:undeploy|cargo:help" local plugin_goals_checkstyle="checkstyle:checkstyle|checkstyle:check" local plugin_goals_cobertura="cobertura:cobertura" - local plugin_goals_dependency="dependency:analyze|dependency:analyze-dep-mgt|dependency:analyze-only|dependency:analyze-report|dependency:build-classpath|dependency:copy|dependency:copy-dependencies|dependency:get|dependency:go-offline|dependency:list|dependency:purge-local-repository|dependency:resolve|dependency:resolve-plugins|dependency:sources|dependency:tree|dependency:unpack|dependency:unpack-dependencies" + local plugin_goals_dependency="dependency:analyze|dependency:analyze-dep-mgt|dependency:analyze-duplicate|dependency:analyze-only|dependency:analyze-report|dependency:build-classpath|dependency:copy|dependency:copy-dependencies|dependency:get|dependency:go-offline|dependency:list|dependency:purge-local-repository|dependency:resolve|dependency:resolve-plugins|dependency:sources|dependency:tree|dependency:unpack|dependency:unpack-dependencies" local plugin_goals_deploy="deploy:deploy-file" local plugin_goals_ear="ear:ear|ear:generate-application-xml" local plugin_goals_eclipse="eclipse:clean|eclipse:eclipse" From d8a33dd069cd5c10e1c19fc5ee2b2e9f259eb865 Mon Sep 17 00:00:00 2001 From: Bartosz Majsak Date: Thu, 20 Nov 2014 14:13:29 +0100 Subject: [PATCH 073/104] Added missing goal for undeploying artifact available in jboss-as plugin --- bash_completion.bash | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bash_completion.bash b/bash_completion.bash index 4c20913..34aed14 100755 --- a/bash_completion.bash +++ b/bash_completion.bash @@ -157,7 +157,7 @@ _mvn() local plugin_goals_jacoco="jacoco:check|jacoco:dump|jacoco:help|jacoco:instrument|jacoco:merge|jacoco:prepare-agent|jacoco:prepare-agent-integration|jacoco:report|jacoco:report-integration|jacoco:restore-instrumented-classes" local plugin_goals_javadoc="javadoc:javadoc|javadoc:jar|javadoc:aggregate" local plugin_goals_jboss="jboss:start|jboss:stop|jboss:deploy|jboss:undeploy|jboss:redeploy" - local plugin_goals_jboss_as="jboss-as:add-resource|jboss-as:deploy|jboss-as:deploy-only|jboss-as:deploy-artifact|jboss-as:redeploy|jboss-as:redeploy-only|jboss-as:undeploy|jboss-as:run|jboss-as:start|jboss-as:shutdown|jboss-as:execute-commands" + local plugin_goals_jboss_as="jboss-as:add-resource|jboss-as:deploy|jboss-as:deploy-only|jboss-as:deploy-artifact|jboss-as:redeploy|jboss-as:redeploy-only|jboss-as:undeploy|jboss-as:undeploy-artifact|jboss-as:run|jboss-as:start|jboss-as:shutdown|jboss-as:execute-commands" local plugin_goals_jetty="jetty:run|jetty:run-exploded" local plugin_goals_jxr="jxr:jxr" local plugin_goals_license="license:format|license:check" From a65680c6ce387c016ea2b278b3a05c5d3ace2e7d Mon Sep 17 00:00:00 2001 From: Filipe Sousa Date: Thu, 15 Jan 2015 09:54:18 +0000 Subject: [PATCH 074/104] add build-helper support --- bash_completion.bash | 1 + 1 file changed, 1 insertion(+) diff --git a/bash_completion.bash b/bash_completion.bash index 34aed14..281bf48 100755 --- a/bash_completion.bash +++ b/bash_completion.bash @@ -134,6 +134,7 @@ _mvn() local plugin_goals_antrun="antrun:run" local plugin_goals_archetype="archetype:generate|archetype:create-from-project|archetype:crawl" local plugin_goals_assembly="assembly:single|assembly:assembly" + local plugin_goals_build_helper="build-helper:add-resource|build-helper:add-source|build-helper:add-test-resource|build-helper:add-test-source|build-helper:attach-artifact|build-helper:bsh-property|build-helper:cpu-count|build-helper:help|build-helper:local-ip|build-helper:maven-version|build-helper:parse-version|build-helper:regex-properties|build-helper:regex-property|build-helper:released-version|build-helper:remove-project-artifact|build-helper:reserve-network-port|build-helper:timestamp-property" local plugin_goals_buildnumber="buildnumber:create|buildnumber:create-timestamp|buildnumber:help|buildnumber:hgchangeset" local plugin_goals_cargo="cargo:start|cargo:run|cargo:stop|cargo:deploy|cargo:undeploy|cargo:help" local plugin_goals_checkstyle="checkstyle:checkstyle|checkstyle:check" From b6a34d7f77572bfc94fb8d1db0272a1ae9b94e6c Mon Sep 17 00:00:00 2001 From: Filipe Sousa Date: Thu, 15 Jan 2015 09:56:14 +0000 Subject: [PATCH 075/104] add -DperformRelease=true to options --- bash_completion.bash | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bash_completion.bash b/bash_completion.bash index 281bf48..d111f8f 100755 --- a/bash_completion.bash +++ b/bash_completion.bash @@ -184,7 +184,7 @@ _mvn() ## some plugin (like jboss-as) has '-' which is not allowed in shell var name, to use '_' then replace local common_plugins=`compgen -v | grep "^plugin_goals_.*" | sed 's/plugin_goals_//g' | tr '_' '-' | tr '\n' '|'` - local options="-Dmaven.test.skip=true|-DskipTests|-DskipITs|-Dtest|-DfailIfNoTests|-Dmaven.surefire.debug|-DenableCiProfile|-Dpmd.skip=true|-Dcheckstyle.skip=true|-Dtycho.mode=maven|-Dmaven.javadoc.skip=true|-Dgwt.compiler.skip|-Dcobertura.skip=true|-Dfindbugs.skip=true" + local options="-Dmaven.test.skip=true|-DskipTests|-DskipITs|-Dtest|-DfailIfNoTests|-Dmaven.surefire.debug|-DenableCiProfile|-Dpmd.skip=true|-Dcheckstyle.skip=true|-Dtycho.mode=maven|-Dmaven.javadoc.skip=true|-Dgwt.compiler.skip|-Dcobertura.skip=true|-Dfindbugs.skip=true||-DperformRelease=true" local profile_settings=`[ -e ~/.m2/settings.xml ] && grep -e "" -A 1 ~/.m2/settings.xml | grep -e ".*" | sed 's/.*//' | sed 's/<\/id>.*//g' | tr '\n' '|' ` From 0b00c6e3afd466f4872398f31ac6e66536c07718 Mon Sep 17 00:00:00 2001 From: Filipe Sousa Date: Thu, 15 Jan 2015 09:57:20 +0000 Subject: [PATCH 076/104] add -Dgpg.skip=true option --- bash_completion.bash | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bash_completion.bash b/bash_completion.bash index d111f8f..262d814 100755 --- a/bash_completion.bash +++ b/bash_completion.bash @@ -184,7 +184,7 @@ _mvn() ## some plugin (like jboss-as) has '-' which is not allowed in shell var name, to use '_' then replace local common_plugins=`compgen -v | grep "^plugin_goals_.*" | sed 's/plugin_goals_//g' | tr '_' '-' | tr '\n' '|'` - local options="-Dmaven.test.skip=true|-DskipTests|-DskipITs|-Dtest|-DfailIfNoTests|-Dmaven.surefire.debug|-DenableCiProfile|-Dpmd.skip=true|-Dcheckstyle.skip=true|-Dtycho.mode=maven|-Dmaven.javadoc.skip=true|-Dgwt.compiler.skip|-Dcobertura.skip=true|-Dfindbugs.skip=true||-DperformRelease=true" + local options="-Dmaven.test.skip=true|-DskipTests|-DskipITs|-Dtest|-DfailIfNoTests|-Dmaven.surefire.debug|-DenableCiProfile|-Dpmd.skip=true|-Dcheckstyle.skip=true|-Dtycho.mode=maven|-Dmaven.javadoc.skip=true|-Dgwt.compiler.skip|-Dcobertura.skip=true|-Dfindbugs.skip=true||-DperformRelease=true|-Dgpg.skip=true" local profile_settings=`[ -e ~/.m2/settings.xml ] && grep -e "" -A 1 ~/.m2/settings.xml | grep -e ".*" | sed 's/.*//' | sed 's/<\/id>.*//g' | tr '\n' '|' ` From be6f23132814b40f584bd0c9fc177fb3c5bd01a4 Mon Sep 17 00:00:00 2001 From: Filipe Sousa Date: Thu, 15 Jan 2015 09:58:28 +0000 Subject: [PATCH 077/104] add more options to plugin_goals_dependency --- bash_completion.bash | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bash_completion.bash b/bash_completion.bash index 262d814..18b05cb 100755 --- a/bash_completion.bash +++ b/bash_completion.bash @@ -139,7 +139,7 @@ _mvn() local plugin_goals_cargo="cargo:start|cargo:run|cargo:stop|cargo:deploy|cargo:undeploy|cargo:help" local plugin_goals_checkstyle="checkstyle:checkstyle|checkstyle:check" local plugin_goals_cobertura="cobertura:cobertura" - local plugin_goals_dependency="dependency:analyze|dependency:analyze-dep-mgt|dependency:analyze-duplicate|dependency:analyze-only|dependency:analyze-report|dependency:build-classpath|dependency:copy|dependency:copy-dependencies|dependency:get|dependency:go-offline|dependency:list|dependency:purge-local-repository|dependency:resolve|dependency:resolve-plugins|dependency:sources|dependency:tree|dependency:unpack|dependency:unpack-dependencies" + local plugin_goals_dependency="dependency:analyze|dependency:analyze-dep-mgt|dependency:analyze-duplicate|dependency:analyze-only|dependency:analyze-report|dependency:build-classpath|dependency:copy|dependency:copy-dependencies|dependency:get|dependency:go-offline|dependency:help|dependency:list|dependency:list-repositories|dependency:properties|dependency:purge-local-repository|dependency:resolve|dependency:resolve-plugins|dependency:sources|dependency:tree|dependency:unpack|dependency:unpack-dependencies" local plugin_goals_deploy="deploy:deploy-file" local plugin_goals_ear="ear:ear|ear:generate-application-xml" local plugin_goals_eclipse="eclipse:clean|eclipse:eclipse" From ef9105d1d7bd4d7e404306b4d17924049710c0b4 Mon Sep 17 00:00:00 2001 From: albfan Date: Sun, 1 Feb 2015 17:54:45 +0100 Subject: [PATCH 078/104] add help completion --- bash_completion.bash | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/bash_completion.bash b/bash_completion.bash index 34aed14..d553b3a 100755 --- a/bash_completion.bash +++ b/bash_completion.bash @@ -138,7 +138,7 @@ _mvn() local plugin_goals_cargo="cargo:start|cargo:run|cargo:stop|cargo:deploy|cargo:undeploy|cargo:help" local plugin_goals_checkstyle="checkstyle:checkstyle|checkstyle:check" local plugin_goals_cobertura="cobertura:cobertura" - local plugin_goals_dependency="dependency:analyze|dependency:analyze-dep-mgt|dependency:analyze-duplicate|dependency:analyze-only|dependency:analyze-report|dependency:build-classpath|dependency:copy|dependency:copy-dependencies|dependency:get|dependency:go-offline|dependency:list|dependency:purge-local-repository|dependency:resolve|dependency:resolve-plugins|dependency:sources|dependency:tree|dependency:unpack|dependency:unpack-dependencies" + local plugin_goals_dependency="dependency:analyze|dependency:analyze-dep-mgt|dependency:analyze-only|dependency:analyze-report|dependency:build-classpath|dependency:copy|dependency:copy-dependencies|dependency:get|dependency:go-offline|dependency:list|dependency:purge-local-repository|dependency:resolve|dependency:resolve-plugins|dependency:sources|dependency:tree|dependency:unpack|dependency:unpack-dependencies" local plugin_goals_deploy="deploy:deploy-file" local plugin_goals_ear="ear:ear|ear:generate-application-xml" local plugin_goals_eclipse="eclipse:clean|eclipse:eclipse" @@ -149,15 +149,15 @@ _mvn() local plugin_goals_flyway="flyway:clean|flyway:history|flyway:init|flyway:migrate|flyway:status|flyway:validate" local plugin_goals_gpg="gpg:sign|gpg:sign-and-deploy-file" local plugin_goals_grails="grails:clean|grails:config-directories|grails:console|grails:create-controller|grails:create-domain-class|grails:create-integration-test|grails:create-pom|grails:create-script|grails:create-service|grails:create-tag-lib|grails:create-unit-test|grails:exec|grails:generate-all|grails:generate-controller|grails:generate-views|grails:help|grails:init|grails:init-plugin|grails:install-templates|grails:list-plugins|grails:maven-clean|grails:maven-compile|grails:maven-functional-test|grails:maven-grails-app-war|grails:maven-test|grails:maven-war|grails:package|grails:package-plugin|grails:run-app|grails:run-app-https|grails:run-war|grails:set-version|grails:test-app|grails:upgrade|grails:validate|grails:validate-plugin|grails:war" - local plugin_goals_gwt="gwt:browser|gwt:clean|gwt:compile|gwt:compile-report|gwt:css|gwt:debug|gwt:eclipse|gwt:eclipseTest|gwt:generateAsync|gwt:help|gwt:i18n|gwt:mergewebxml|gwt:resources|gwt:run|gwt:run-codeserver|gwt:sdkInstall|gwt:source-jar|gwt:soyc|gwt:test" - local plugin_goals_help="help:active-profiles|help:all-profiles|help:describe|help:effective-pom|help:effective-settings|help:evaluate|help:expressions|help:system" + local plugin_goals_gwt="gwt:browser|gwt:clean|gwt:compile|gwt:compile-report|gwt:css|gwt:debug|gwt:eclipse|gwt:eclipseTest|gwt:generateAsync|gwt:help|gwt:i18n|gwt:mergewebxml|gwt:resources|gwt:run|gwt:sdkInstall|gwt:source-jar|gwt:soyc|gwt:test" + local plugin_goals_help="help:active-profiles|help:all-profiles|help:describe|help:effective-pom|help:effective-settings|help:evaluate|help:expressions|help:help|help:system" local plugin_goals_hibernate3="hibernate3:hbm2ddl|hibernate3:help" local plugin_goals_idea="idea:clean|idea:idea" local plugin_goals_install="install:install-file" local plugin_goals_jacoco="jacoco:check|jacoco:dump|jacoco:help|jacoco:instrument|jacoco:merge|jacoco:prepare-agent|jacoco:prepare-agent-integration|jacoco:report|jacoco:report-integration|jacoco:restore-instrumented-classes" local plugin_goals_javadoc="javadoc:javadoc|javadoc:jar|javadoc:aggregate" local plugin_goals_jboss="jboss:start|jboss:stop|jboss:deploy|jboss:undeploy|jboss:redeploy" - local plugin_goals_jboss_as="jboss-as:add-resource|jboss-as:deploy|jboss-as:deploy-only|jboss-as:deploy-artifact|jboss-as:redeploy|jboss-as:redeploy-only|jboss-as:undeploy|jboss-as:undeploy-artifact|jboss-as:run|jboss-as:start|jboss-as:shutdown|jboss-as:execute-commands" + local plugin_goals_jboss_as="jboss-as:add-resource|jboss-as:deploy|jboss-as:deploy-only|jboss-as:deploy-artifact|jboss-as:redeploy|jboss-as:redeploy-only|jboss-as:undeploy|jboss-as:run|jboss-as:start|jboss-as:shutdown|jboss-as:execute-commands" local plugin_goals_jetty="jetty:run|jetty:run-exploded" local plugin_goals_jxr="jxr:jxr" local plugin_goals_license="license:format|license:check" @@ -171,8 +171,8 @@ _mvn() local plugin_goals_sonar="sonar:sonar" local plugin_goals_source="source:aggregate|source:jar|source:jar-no-fork" local plugin_goals_surefire="surefire:test" - local plugin_goals_tomcat6="tomcat6:run|tomcat6:run-war|tomcat6:run-war-only|tomcat6:stop|tomcat6:deploy|tomcat6:undeploy" - local plugin_goals_tomcat7="tomcat7:run|tomcat7:run-war|tomcat7:run-war-only|tomcat7:deploy" + local plugin_goals_tomcat6="tomcat6:help|tomcat6:run|tomcat6:run-war|tomcat6:run-war-only|tomcat6:stop|tomcat6:deploy|tomcat6:undeploy" + local plugin_goals_tomcat7="tomcat7:help|tomcat7:run|tomcat7:run-war|tomcat7:run-war-only|tomcat7:deploy" local plugin_goals_tomcat="tomcat:start|tomcat:stop|tomcat:deploy|tomcat:undeploy|tomcat:undeploy" local plugin_goals_versions="versions:display-dependency-updates|versions:display-plugin-updates|versions:display-property-updates|versions:update-parent|versions:update-properties|versions:update-child-modules|versions:lock-snapshots|versions:unlock-snapshots|versions:resolve-ranges|versions:set|versions:use-releases|versions:use-next-releases|versions:use-latest-releases|versions:use-next-snapshots|versions:use-latest-snapshots|versions:use-next-versions|versions:use-latest-versions|versions:commit|versions:revert" local plugin_goals_vertx="vertx:init|vertx:runMod|vertx:pullInDeps|vertx:fatJar" From 776aaacbce74c87b5a846b523dbb7cf6b3129b68 Mon Sep 17 00:00:00 2001 From: "John D. Ament" Date: Thu, 19 Feb 2015 19:06:06 -0500 Subject: [PATCH 079/104] Added wildfly plugin. --- bash_completion.bash | 1 + 1 file changed, 1 insertion(+) diff --git a/bash_completion.bash b/bash_completion.bash index 34aed14..7909343 100755 --- a/bash_completion.bash +++ b/bash_completion.bash @@ -179,6 +179,7 @@ _mvn() local plugin_goals_war="war:war|war:exploded|war:inplace|war:manifest" local plugin_goals_spring_boot="spring-boot:run|spring-boot:repackage" local plugin_goals_jgitflow="jgitflow:feature-start|jgitflow:feature-finish|jgitflow:release-start|jgitflow:release-finish|jgitflow:hotfix-start|jgitflow:hotfix-finish|jgitflow:build-number" + local plugin_goals_wildfly="wildfly:add-resource|wildfly:deploy|wildfly:deploy-only|wildfly:deploy-artifact|wildfly:redeploy|wildfly:redeploy-only|wildfly:undeploy|wildfly:undeploy-artifact|wildfly:run|wildfly:start|wildfly:shutdown|wildfly:execute-commands" ## some plugin (like jboss-as) has '-' which is not allowed in shell var name, to use '_' then replace local common_plugins=`compgen -v | grep "^plugin_goals_.*" | sed 's/plugin_goals_//g' | tr '_' '-' | tr '\n' '|'` From 1bdbbbd66ad81d8f867fdedaf7cbd13ac078f471 Mon Sep 17 00:00:00 2001 From: Thomas Hikade Date: Mon, 2 Mar 2015 10:05:08 +0100 Subject: [PATCH 080/104] added liberty plugin support support for IBM's Liberty profile appserver. Liberty profile docs: https://developer.ibm.com/wasdev/ Maven liberty-plugin docs: https://github.com/WASdev/ci.maven --- bash_completion.bash | 1 + 1 file changed, 1 insertion(+) diff --git a/bash_completion.bash b/bash_completion.bash index 7909343..3fd7793 100755 --- a/bash_completion.bash +++ b/bash_completion.bash @@ -174,6 +174,7 @@ _mvn() local plugin_goals_tomcat6="tomcat6:run|tomcat6:run-war|tomcat6:run-war-only|tomcat6:stop|tomcat6:deploy|tomcat6:undeploy" local plugin_goals_tomcat7="tomcat7:run|tomcat7:run-war|tomcat7:run-war-only|tomcat7:deploy" local plugin_goals_tomcat="tomcat:start|tomcat:stop|tomcat:deploy|tomcat:undeploy|tomcat:undeploy" + local plugin_goals_liberty="liberty:create-server|liberty:start-server|liberty:stop-server|liberty:run-server|liberty:deploy|liberty:undeploy|liberty:java-dump-server|liberty:dump-server|liberty:package-server" local plugin_goals_versions="versions:display-dependency-updates|versions:display-plugin-updates|versions:display-property-updates|versions:update-parent|versions:update-properties|versions:update-child-modules|versions:lock-snapshots|versions:unlock-snapshots|versions:resolve-ranges|versions:set|versions:use-releases|versions:use-next-releases|versions:use-latest-releases|versions:use-next-snapshots|versions:use-latest-snapshots|versions:use-next-versions|versions:use-latest-versions|versions:commit|versions:revert" local plugin_goals_vertx="vertx:init|vertx:runMod|vertx:pullInDeps|vertx:fatJar" local plugin_goals_war="war:war|war:exploded|war:inplace|war:manifest" From 32032aff3f85330f3453c8a3dfc76c97b666efee Mon Sep 17 00:00:00 2001 From: Thomas Hikade Date: Mon, 2 Mar 2015 10:07:17 +0100 Subject: [PATCH 081/104] removed duplicate tomcat plugin goal --- bash_completion.bash | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bash_completion.bash b/bash_completion.bash index 3fd7793..9b653b0 100755 --- a/bash_completion.bash +++ b/bash_completion.bash @@ -173,7 +173,7 @@ _mvn() local plugin_goals_surefire="surefire:test" local plugin_goals_tomcat6="tomcat6:run|tomcat6:run-war|tomcat6:run-war-only|tomcat6:stop|tomcat6:deploy|tomcat6:undeploy" local plugin_goals_tomcat7="tomcat7:run|tomcat7:run-war|tomcat7:run-war-only|tomcat7:deploy" - local plugin_goals_tomcat="tomcat:start|tomcat:stop|tomcat:deploy|tomcat:undeploy|tomcat:undeploy" + local plugin_goals_tomcat="tomcat:start|tomcat:stop|tomcat:deploy|tomcat:undeploy" local plugin_goals_liberty="liberty:create-server|liberty:start-server|liberty:stop-server|liberty:run-server|liberty:deploy|liberty:undeploy|liberty:java-dump-server|liberty:dump-server|liberty:package-server" local plugin_goals_versions="versions:display-dependency-updates|versions:display-plugin-updates|versions:display-property-updates|versions:update-parent|versions:update-properties|versions:update-child-modules|versions:lock-snapshots|versions:unlock-snapshots|versions:resolve-ranges|versions:set|versions:use-releases|versions:use-next-releases|versions:use-latest-releases|versions:use-next-snapshots|versions:use-latest-snapshots|versions:use-next-versions|versions:use-latest-versions|versions:commit|versions:revert" local plugin_goals_vertx="vertx:init|vertx:runMod|vertx:pullInDeps|vertx:fatJar" From 2dd25ae332a77836be18e614b73c8b9eaadd428f Mon Sep 17 00:00:00 2001 From: Dmitry Jerusalimsky Date: Thu, 7 May 2015 12:43:11 -0700 Subject: [PATCH 082/104] Fixed an issue where paths with spaces print out error messages --- bash_completion.bash | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/bash_completion.bash b/bash_completion.bash index 9b653b0..df77c29 100755 --- a/bash_completion.bash +++ b/bash_completion.bash @@ -92,9 +92,9 @@ __pom_hierarchy() { local pom=`_realpath "pom.xml"` POM_HIERARCHY+=("$pom") - while [ -n "$pom" ] && grep -q "" $pom; do + while [ -n "$pom" ] && grep -q "" "$pom"; do ## look for a new relativePath for parent pom.xml - local parent_pom_relative=`grep -e ".*" $pom | sed 's/.*//' | sed 's/<\/relativePath>.*//g'` + local parent_pom_relative=`grep -e ".*" "$pom" | sed 's/.*//' | sed 's/<\/relativePath>.*//g'` ## is present but not defined, assume ../pom.xml if [ -z "$parent_pom_relative" ]; then From 85d88b0367aec1c4150499c810bfa1319e69c781 Mon Sep 17 00:00:00 2001 From: Dmitry Jerusalimsky Date: Thu, 7 May 2015 13:11:31 -0700 Subject: [PATCH 083/104] Fixed a typo after merge --- bash_completion.bash | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bash_completion.bash b/bash_completion.bash index c9f4dd1..b0f41a9 100755 --- a/bash_completion.bash +++ b/bash_completion.bash @@ -139,7 +139,7 @@ _mvn() local plugin_goals_cargo="cargo:start|cargo:run|cargo:stop|cargo:deploy|cargo:undeploy|cargo:help" local plugin_goals_checkstyle="checkstyle:checkstyle|checkstyle:check" local plugin_goals_cobertura="cobertura:cobertura" - local plugin_goals_dependency"dependency:analyze|dependency:analyze-dep-mgt|dependency:analyze-duplicate|dependency:analyze-only|dependency:analyze-report|dependency:build-classpath|dependency:copy|dependency:copy-dependencies|dependency:get|dependency:go-offline|dependency:help|dependency:list|dependency:list-repositories|dependency:properties|dependency:purge-local-repository|dependency:resolve|dependency:resolve-plugins|dependency:sources|dependency:tree|dependency:unpack|dependency:unpack-dependencies" + local plugin_goals_dependency="dependency:analyze|dependency:analyze-dep-mgt|dependency:analyze-duplicate|dependency:analyze-only|dependency:analyze-report|dependency:build-classpath|dependency:copy|dependency:copy-dependencies|dependency:get|dependency:go-offline|dependency:help|dependency:list|dependency:list-repositories|dependency:properties|dependency:purge-local-repository|dependency:resolve|dependency:resolve-plugins|dependency:sources|dependency:tree|dependency:unpack|dependency:unpack-dependencies" local plugin_goals_deploy="deploy:deploy-file" local plugin_goals_ear="ear:ear|ear:generate-application-xml" local plugin_goals_eclipse="eclipse:clean|eclipse:eclipse" From 38bdbaf4256716875cdc7a59668700bdfd94a59f Mon Sep 17 00:00:00 2001 From: Dmitry Jerusalimsky Date: Thu, 7 May 2015 13:15:14 -0700 Subject: [PATCH 084/104] added findbugs --- bash_completion.bash | 1 + 1 file changed, 1 insertion(+) diff --git a/bash_completion.bash b/bash_completion.bash index b0f41a9..ce4c4e2 100755 --- a/bash_completion.bash +++ b/bash_completion.bash @@ -139,6 +139,7 @@ _mvn() local plugin_goals_cargo="cargo:start|cargo:run|cargo:stop|cargo:deploy|cargo:undeploy|cargo:help" local plugin_goals_checkstyle="checkstyle:checkstyle|checkstyle:check" local plugin_goals_cobertura="cobertura:cobertura" + local plugin_goals_findbugs="findbugs:findbugs|findbugs:gui|findbugs:help" local plugin_goals_dependency="dependency:analyze|dependency:analyze-dep-mgt|dependency:analyze-duplicate|dependency:analyze-only|dependency:analyze-report|dependency:build-classpath|dependency:copy|dependency:copy-dependencies|dependency:get|dependency:go-offline|dependency:help|dependency:list|dependency:list-repositories|dependency:properties|dependency:purge-local-repository|dependency:resolve|dependency:resolve-plugins|dependency:sources|dependency:tree|dependency:unpack|dependency:unpack-dependencies" local plugin_goals_deploy="deploy:deploy-file" local plugin_goals_ear="ear:ear|ear:generate-application-xml" From e5bf60c4b4d858c66821ebaf582dab91be5d9220 Mon Sep 17 00:00:00 2001 From: Dmitry Jerusalimsky Date: Thu, 7 May 2015 13:23:29 -0700 Subject: [PATCH 085/104] added findbugs goal and some options --- bash_completion.bash | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/bash_completion.bash b/bash_completion.bash index ce4c4e2..de7a0e7 100755 --- a/bash_completion.bash +++ b/bash_completion.bash @@ -170,7 +170,7 @@ _mvn() local plugin_goals_repository="repository:bundle-create|repository:bundle-pack|repository:help" local plugin_goals_scm="scm:add|scm:checkin|scm:checkout|scm:update|scm:status" local plugin_goals_site="site:site|site:deploy|site:run|site:stage|site:stage-deploy" - local plugin_goals_sonar="sonar:sonar" + local plugin_goals_sonar="sonar:sonar|sonar:help" local plugin_goals_source="source:aggregate|source:jar|source:jar-no-fork" local plugin_goals_surefire="surefire:test" local plugin_goals_tomcat6="tomcat6:help|tomcat6:run|tomcat6:run-war|tomcat6:run-war-only|tomcat6:stop|tomcat6:deploy|tomcat6:undeploy" @@ -187,7 +187,7 @@ _mvn() ## some plugin (like jboss-as) has '-' which is not allowed in shell var name, to use '_' then replace local common_plugins=`compgen -v | grep "^plugin_goals_.*" | sed 's/plugin_goals_//g' | tr '_' '-' | tr '\n' '|'` - local options="-Dmaven.test.skip=true|-DskipTests|-DskipITs|-Dtest|-DfailIfNoTests|-Dmaven.surefire.debug|-DenableCiProfile|-Dpmd.skip=true|-Dcheckstyle.skip=true|-Dtycho.mode=maven|-Dmaven.javadoc.skip=true|-Dgwt.compiler.skip|-Dcobertura.skip=true|-Dfindbugs.skip=true||-DperformRelease=true|-Dgpg.skip=true" + local options="-Dmaven.test.skip=true|-DskipTests|-DskipITs|-Dtest|-Dit.test|-DfailIfNoTests|-Dmaven.surefire.debug|-DenableCiProfile|-Dpmd.skip=true|-Dcheckstyle.skip=true|-Dtycho.mode=maven|-Dmaven.javadoc.skip=true|-Dgwt.compiler.skip|-Dcobertura.skip=true|-Dfindbugs.skip=true||-DperformRelease=true|-Dgpg.skip=true|-DforkCount" local profile_settings=`[ -e ~/.m2/settings.xml ] && grep -e "" -A 1 ~/.m2/settings.xml | grep -e ".*" | sed 's/.*//' | sed 's/<\/id>.*//g' | tr '\n' '|' ` From 3937bdce7384cbfeb9f4f78b55141d2575e558cd Mon Sep 17 00:00:00 2001 From: Dmitry Jerusalimsky Date: Thu, 7 May 2015 20:18:14 -0700 Subject: [PATCH 086/104] Minor installation guide update --- readme.md | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/readme.md b/readme.md index 92c89dd..e50ed09 100644 --- a/readme.md +++ b/readme.md @@ -12,12 +12,7 @@ Example install manually: Example install as a one-line command line call for Debian and other distro: -`sudo wget https://raw.github.com/juven/maven-bash-completion/master/bash_completion.bash --output-document /etc/bash_completion.d/mvn` - -Example install for MacOS X using the [Homebrew](http://brew.sh/) package manager: - -1. `brew tap homebrew/completions` (add Git repository with completions to list of formulae, if not already done) -2. `brew install maven-completion` (install maven-completion formula) +`sudo wget https://raw.github.com/dimaj/maven-bash-completion/master/bash_completion.bash --output-document /etc/bash_completion.d/mvn` ## Usage From 6ed1cfe7da535bfda639a79ee2f2b3323964914d Mon Sep 17 00:00:00 2001 From: juven Date: Sun, 10 May 2015 09:38:27 +0800 Subject: [PATCH 087/104] add missing goals --- bash_completion.bash | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/bash_completion.bash b/bash_completion.bash index de7a0e7..1c043db 100755 --- a/bash_completion.bash +++ b/bash_completion.bash @@ -151,7 +151,7 @@ _mvn() local plugin_goals_flyway="flyway:clean|flyway:history|flyway:init|flyway:migrate|flyway:status|flyway:validate" local plugin_goals_gpg="gpg:sign|gpg:sign-and-deploy-file" local plugin_goals_grails="grails:clean|grails:config-directories|grails:console|grails:create-controller|grails:create-domain-class|grails:create-integration-test|grails:create-pom|grails:create-script|grails:create-service|grails:create-tag-lib|grails:create-unit-test|grails:exec|grails:generate-all|grails:generate-controller|grails:generate-views|grails:help|grails:init|grails:init-plugin|grails:install-templates|grails:list-plugins|grails:maven-clean|grails:maven-compile|grails:maven-functional-test|grails:maven-grails-app-war|grails:maven-test|grails:maven-war|grails:package|grails:package-plugin|grails:run-app|grails:run-app-https|grails:run-war|grails:set-version|grails:test-app|grails:upgrade|grails:validate|grails:validate-plugin|grails:war" - local plugin_goals_gwt="gwt:browser|gwt:clean|gwt:compile|gwt:compile-report|gwt:css|gwt:debug|gwt:eclipse|gwt:eclipseTest|gwt:generateAsync|gwt:help|gwt:i18n|gwt:mergewebxml|gwt:resources|gwt:run|gwt:sdkInstall|gwt:source-jar|gwt:soyc|gwt:test" + local plugin_goals_gwt="gwt:browser|gwt:clean|gwt:compile|gwt:compile-report|gwt:css|gwt:debug|gwt:eclipse|gwt:eclipseTest|gwt:generateAsync|gwt:help|gwt:i18n|gwt:mergewebxml|gwt:resources|gwt:run|gwt:run-codeserver|gwt:sdkInstall|gwt:source-jar|gwt:soyc|gwt:test" local plugin_goals_help="help:active-profiles|help:all-profiles|help:describe|help:effective-pom|help:effective-settings|help:evaluate|help:expressions|help:help|help:system" local plugin_goals_hibernate3="hibernate3:hbm2ddl|hibernate3:help" local plugin_goals_idea="idea:clean|idea:idea" @@ -159,7 +159,7 @@ _mvn() local plugin_goals_jacoco="jacoco:check|jacoco:dump|jacoco:help|jacoco:instrument|jacoco:merge|jacoco:prepare-agent|jacoco:prepare-agent-integration|jacoco:report|jacoco:report-integration|jacoco:restore-instrumented-classes" local plugin_goals_javadoc="javadoc:javadoc|javadoc:jar|javadoc:aggregate" local plugin_goals_jboss="jboss:start|jboss:stop|jboss:deploy|jboss:undeploy|jboss:redeploy" - local plugin_goals_jboss_as="jboss-as:add-resource|jboss-as:deploy|jboss-as:deploy-only|jboss-as:deploy-artifact|jboss-as:redeploy|jboss-as:redeploy-only|jboss-as:undeploy|jboss-as:run|jboss-as:start|jboss-as:shutdown|jboss-as:execute-commands" + local plugin_goals_jboss_as="jboss-as:add-resource|jboss-as:deploy|jboss-as:deploy-only|jboss-as:deploy-artifact|jboss-as:redeploy|jboss-as:redeploy-only|jboss-as:undeploy|jboss-as:undeploy-artifact|jboss-as:run|jboss-as:start|jboss-as:shutdown|jboss-as:execute-commands" local plugin_goals_jetty="jetty:run|jetty:run-exploded" local plugin_goals_jxr="jxr:jxr" local plugin_goals_license="license:format|license:check" From 045ce1d59a73f879418b86bc721a73fe5976ef42 Mon Sep 17 00:00:00 2001 From: "juven.xuxb" Date: Sun, 10 May 2015 15:41:18 +0800 Subject: [PATCH 088/104] demo gif --- demo.gif | Bin 0 -> 974898 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 demo.gif diff --git a/demo.gif b/demo.gif new file mode 100644 index 0000000000000000000000000000000000000000..fd1c19de43db6db1487f15a6970a59ef1c1d40b8 GIT binary patch literal 974898 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≷Zt2s=9G+ugEeUN#`)S>=$qP1B{X$h* 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 ro9m~qa2xQA#MkK8Ih(AT6>-VMi`#

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 C(K_e= literal 0 HcmV?d00001 From 42e754fec6c29835acba8b0a5f02e483ad34201c Mon Sep 17 00:00:00 2001 From: Juven Xu Date: Sun, 10 May 2015 15:48:47 +0800 Subject: [PATCH 089/104] add demo gif --- readme.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/readme.md b/readme.md index e50ed09..8f5a25b 100644 --- a/readme.md +++ b/readme.md @@ -2,6 +2,10 @@ Maven by default does not distribute with a Bash auto completion script, only [a very simple guide](http://maven.apache.org/guides/mini/guide-bash-m2-completion.html) is provided. This script gives you more to help your daily Maven build. +## Demo + +![Demo](https://raw.githubusercontent.com/juven/maven-bash-completion/master/demo.gif) + ## Installation Example install manually: From 935b9b7bd2b5a0725429c325b4c63b19cea42d30 Mon Sep 17 00:00:00 2001 From: Dmitry Malchikov Date: Thu, 4 Jun 2015 14:04:42 +0200 Subject: [PATCH 090/104] Updated flyway-maven-plugin goals according to http://flywaydb.org/documentation/maven/ --- bash_completion.bash | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bash_completion.bash b/bash_completion.bash index 1c043db..84ccdc1 100755 --- a/bash_completion.bash +++ b/bash_completion.bash @@ -148,7 +148,7 @@ _mvn() local plugin_goals_enforcer="enforcer:enforce|enforcer:display-info" local plugin_goals_exec="exec:exec|exec:java" local plugin_goals_failsafe="failsafe:integration-test|failsafe:verify" - local plugin_goals_flyway="flyway:clean|flyway:history|flyway:init|flyway:migrate|flyway:status|flyway:validate" + local plugin_goals_flyway="flyway:migrate|flyway:clean|flyway:info|flyway:info|flyway:validate|flyway:baseline|flyway:repair" local plugin_goals_gpg="gpg:sign|gpg:sign-and-deploy-file" local plugin_goals_grails="grails:clean|grails:config-directories|grails:console|grails:create-controller|grails:create-domain-class|grails:create-integration-test|grails:create-pom|grails:create-script|grails:create-service|grails:create-tag-lib|grails:create-unit-test|grails:exec|grails:generate-all|grails:generate-controller|grails:generate-views|grails:help|grails:init|grails:init-plugin|grails:install-templates|grails:list-plugins|grails:maven-clean|grails:maven-compile|grails:maven-functional-test|grails:maven-grails-app-war|grails:maven-test|grails:maven-war|grails:package|grails:package-plugin|grails:run-app|grails:run-app-https|grails:run-war|grails:set-version|grails:test-app|grails:upgrade|grails:validate|grails:validate-plugin|grails:war" local plugin_goals_gwt="gwt:browser|gwt:clean|gwt:compile|gwt:compile-report|gwt:css|gwt:debug|gwt:eclipse|gwt:eclipseTest|gwt:generateAsync|gwt:help|gwt:i18n|gwt:mergewebxml|gwt:resources|gwt:run|gwt:run-codeserver|gwt:sdkInstall|gwt:source-jar|gwt:soyc|gwt:test" From e27e290a8aa3e09eff08792df27f0e1fe230fbd6 Mon Sep 17 00:00:00 2001 From: juven Date: Thu, 14 Jan 2016 10:10:36 +0800 Subject: [PATCH 091/104] add license, fixed #71 --- LICENSE | 202 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 202 insertions(+) create mode 100644 LICENSE diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..c2ce79d --- /dev/null +++ b/LICENSE @@ -0,0 +1,202 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright 2011-2016 Juven Xu + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. From 17fbaa1d84cfc50d2028df905903ec9a1e0b1271 Mon Sep 17 00:00:00 2001 From: Andreas Gebhardt Date: Wed, 27 Apr 2016 15:04:21 +0200 Subject: [PATCH 092/104] add scala-maven-plugin support Add goals for Maven Scala [1] plugin. [1] http://davidb.github.io/scala-maven-plugin/ --- bash_completion.bash | 1 + 1 file changed, 1 insertion(+) diff --git a/bash_completion.bash b/bash_completion.bash index 1c043db..0f61c16 100755 --- a/bash_completion.bash +++ b/bash_completion.bash @@ -183,6 +183,7 @@ _mvn() local plugin_goals_spring_boot="spring-boot:run|spring-boot:repackage" local plugin_goals_jgitflow="jgitflow:feature-start|jgitflow:feature-finish|jgitflow:release-start|jgitflow:release-finish|jgitflow:hotfix-start|jgitflow:hotfix-finish|jgitflow:build-number" local plugin_goals_wildfly="wildfly:add-resource|wildfly:deploy|wildfly:deploy-only|wildfly:deploy-artifact|wildfly:redeploy|wildfly:redeploy-only|wildfly:undeploy|wildfly:undeploy-artifact|wildfly:run|wildfly:start|wildfly:shutdown|wildfly:execute-commands" + local plugin_goals_scala="scala:add-source|scala:cc|scala:cctest|scala:compile|scala:console|scala:doc|scala:doc-jar|scala:help|scala:run|scala:script|scala:testCompile" ## some plugin (like jboss-as) has '-' which is not allowed in shell var name, to use '_' then replace local common_plugins=`compgen -v | grep "^plugin_goals_.*" | sed 's/plugin_goals_//g' | tr '_' '-' | tr '\n' '|'` From 40111632b7eee1fc9957dc70d414f7758c9da21b Mon Sep 17 00:00:00 2001 From: Dan Leong Date: Thu, 28 Apr 2016 10:04:55 +0100 Subject: [PATCH 093/104] Add jetty:run-forked --- bash_completion.bash | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bash_completion.bash b/bash_completion.bash index 1c043db..6551101 100755 --- a/bash_completion.bash +++ b/bash_completion.bash @@ -160,7 +160,7 @@ _mvn() local plugin_goals_javadoc="javadoc:javadoc|javadoc:jar|javadoc:aggregate" local plugin_goals_jboss="jboss:start|jboss:stop|jboss:deploy|jboss:undeploy|jboss:redeploy" local plugin_goals_jboss_as="jboss-as:add-resource|jboss-as:deploy|jboss-as:deploy-only|jboss-as:deploy-artifact|jboss-as:redeploy|jboss-as:redeploy-only|jboss-as:undeploy|jboss-as:undeploy-artifact|jboss-as:run|jboss-as:start|jboss-as:shutdown|jboss-as:execute-commands" - local plugin_goals_jetty="jetty:run|jetty:run-exploded" + local plugin_goals_jetty="jetty:run|jetty:run-exploded|jetty:run-forked" local plugin_goals_jxr="jxr:jxr" local plugin_goals_license="license:format|license:check" local plugin_goals_liquibase="liquibase:changelogSync|liquibase:changelogSyncSQL|liquibase:clearCheckSums|liquibase:dbDoc|liquibase:diff|liquibase:dropAll|liquibase:help|liquibase:migrate|liquibase:listLocks|liquibase:migrateSQL|liquibase:releaseLocks|liquibase:rollback|liquibase:rollbackSQL|liquibase:status|liquibase:tag|liquibase:update|liquibase:updateSQL|liquibase:updateTestingRollback" From 09ddf949328b8a14a3d98d8468fe30b39e7140a0 Mon Sep 17 00:00:00 2001 From: Alexey Bakulin Date: Fri, 29 Apr 2016 19:16:05 +0300 Subject: [PATCH 094/104] Add properties plugin support --- bash_completion.bash | 1 + 1 file changed, 1 insertion(+) diff --git a/bash_completion.bash b/bash_completion.bash index 1c043db..141e236 100755 --- a/bash_completion.bash +++ b/bash_completion.bash @@ -166,6 +166,7 @@ _mvn() local plugin_goals_liquibase="liquibase:changelogSync|liquibase:changelogSyncSQL|liquibase:clearCheckSums|liquibase:dbDoc|liquibase:diff|liquibase:dropAll|liquibase:help|liquibase:migrate|liquibase:listLocks|liquibase:migrateSQL|liquibase:releaseLocks|liquibase:rollback|liquibase:rollbackSQL|liquibase:status|liquibase:tag|liquibase:update|liquibase:updateSQL|liquibase:updateTestingRollback" local plugin_goals_nexus_staging="nexus-staging:close|nexus-staging:deploy|nexus-staging:deploy-staged|nexus-staging:deploy-staged-repository|nexus-staging:drop|nexus-staging:help|nexus-staging:promote|nexus-staging:rc-close|nexus-staging:rc-drop|nexus-staging:rc-list|nexus-staging:rc-list-profiles|nexus-staging:rc-promote|nexus-staging:rc-release|nexus-staging:release" local plugin_goals_pmd="pmd:pmd|pmd:cpd|pmd:check|pmd:cpd-check" + local plugin_goals_properties="properties:read-project-properties|properties:write-project-properties|properties:write-active-profile-properties|properties:set-system-properties" local plugin_goals_release="release:clean|release:prepare|release:rollback|release:perform|release:stage|release:branch|release:update-versions" local plugin_goals_repository="repository:bundle-create|repository:bundle-pack|repository:help" local plugin_goals_scm="scm:add|scm:checkin|scm:checkout|scm:update|scm:status" From 9b5333e661b1e8ef4d063cabaad837aafd09f49c Mon Sep 17 00:00:00 2001 From: juven Date: Sun, 1 May 2016 20:07:34 +0800 Subject: [PATCH 095/104] order by plugin prefix --- bash_completion.bash | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bash_completion.bash b/bash_completion.bash index 746d8e9..41dcb6a 100755 --- a/bash_completion.bash +++ b/bash_completion.bash @@ -169,6 +169,7 @@ _mvn() local plugin_goals_properties="properties:read-project-properties|properties:write-project-properties|properties:write-active-profile-properties|properties:set-system-properties" local plugin_goals_release="release:clean|release:prepare|release:rollback|release:perform|release:stage|release:branch|release:update-versions" local plugin_goals_repository="repository:bundle-create|repository:bundle-pack|repository:help" + local plugin_goals_scala="scala:add-source|scala:cc|scala:cctest|scala:compile|scala:console|scala:doc|scala:doc-jar|scala:help|scala:run|scala:script|scala:testCompile" local plugin_goals_scm="scm:add|scm:checkin|scm:checkout|scm:update|scm:status" local plugin_goals_site="site:site|site:deploy|site:run|site:stage|site:stage-deploy" local plugin_goals_sonar="sonar:sonar|sonar:help" @@ -184,7 +185,6 @@ _mvn() local plugin_goals_spring_boot="spring-boot:run|spring-boot:repackage" local plugin_goals_jgitflow="jgitflow:feature-start|jgitflow:feature-finish|jgitflow:release-start|jgitflow:release-finish|jgitflow:hotfix-start|jgitflow:hotfix-finish|jgitflow:build-number" local plugin_goals_wildfly="wildfly:add-resource|wildfly:deploy|wildfly:deploy-only|wildfly:deploy-artifact|wildfly:redeploy|wildfly:redeploy-only|wildfly:undeploy|wildfly:undeploy-artifact|wildfly:run|wildfly:start|wildfly:shutdown|wildfly:execute-commands" - local plugin_goals_scala="scala:add-source|scala:cc|scala:cctest|scala:compile|scala:console|scala:doc|scala:doc-jar|scala:help|scala:run|scala:script|scala:testCompile" ## some plugin (like jboss-as) has '-' which is not allowed in shell var name, to use '_' then replace local common_plugins=`compgen -v | grep "^plugin_goals_.*" | sed 's/plugin_goals_//g' | tr '_' '-' | tr '\n' '|'` From 991d43460ce09c9b89b951d1f852c6eca9b7fa8d Mon Sep 17 00:00:00 2001 From: juven Date: Sun, 1 May 2016 20:25:27 +0800 Subject: [PATCH 096/104] remove dup --- bash_completion.bash | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bash_completion.bash b/bash_completion.bash index 915ecfc..34f5906 100755 --- a/bash_completion.bash +++ b/bash_completion.bash @@ -148,7 +148,7 @@ _mvn() local plugin_goals_enforcer="enforcer:enforce|enforcer:display-info" local plugin_goals_exec="exec:exec|exec:java" local plugin_goals_failsafe="failsafe:integration-test|failsafe:verify" - local plugin_goals_flyway="flyway:migrate|flyway:clean|flyway:info|flyway:info|flyway:validate|flyway:baseline|flyway:repair" + local plugin_goals_flyway="flyway:migrate|flyway:clean|flyway:info|flyway:validate|flyway:baseline|flyway:repair" local plugin_goals_gpg="gpg:sign|gpg:sign-and-deploy-file" local plugin_goals_grails="grails:clean|grails:config-directories|grails:console|grails:create-controller|grails:create-domain-class|grails:create-integration-test|grails:create-pom|grails:create-script|grails:create-service|grails:create-tag-lib|grails:create-unit-test|grails:exec|grails:generate-all|grails:generate-controller|grails:generate-views|grails:help|grails:init|grails:init-plugin|grails:install-templates|grails:list-plugins|grails:maven-clean|grails:maven-compile|grails:maven-functional-test|grails:maven-grails-app-war|grails:maven-test|grails:maven-war|grails:package|grails:package-plugin|grails:run-app|grails:run-app-https|grails:run-war|grails:set-version|grails:test-app|grails:upgrade|grails:validate|grails:validate-plugin|grails:war" local plugin_goals_gwt="gwt:browser|gwt:clean|gwt:compile|gwt:compile-report|gwt:css|gwt:debug|gwt:eclipse|gwt:eclipseTest|gwt:generateAsync|gwt:help|gwt:i18n|gwt:mergewebxml|gwt:resources|gwt:run|gwt:run-codeserver|gwt:sdkInstall|gwt:source-jar|gwt:soyc|gwt:test" From de8b505b33dc45e578d00f819d07f267c6408584 Mon Sep 17 00:00:00 2001 From: Markus Schulte Date: Tue, 7 Jan 2020 10:28:16 +0100 Subject: [PATCH 097/104] Support Maven Wrapper, too --- bash_completion.bash | 1 + readme.md | 6 +++++- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/bash_completion.bash b/bash_completion.bash index 34f5906..7abb731 100755 --- a/bash_completion.bash +++ b/bash_completion.bash @@ -251,3 +251,4 @@ _mvn() complete -o default -F _mvn -o nospace mvn complete -o default -F _mvn -o nospace mvnDebug +complete -o default -F _mvn -o nospace mvnw diff --git a/readme.md b/readme.md index 8f5a25b..64481f9 100644 --- a/readme.md +++ b/readme.md @@ -1,6 +1,10 @@ # Maven Bash Completion -Maven by default does not distribute with a Bash auto completion script, only [a very simple guide](http://maven.apache.org/guides/mini/guide-bash-m2-completion.html) is provided. This script gives you more to help your daily Maven build. +Maven by default does not distribute with a Bash auto completion script, only +[a very simple guide](http://maven.apache.org/guides/mini/guide-bash-m2-completion.html) is +provided. This script gives you more to help your daily Maven build. + +[Maven Wrapper](https://github.com/takari/maven-wrapper) is supported, too. ## Demo From a8ba9a9818399a61f79e0ec216945e37de0f22f1 Mon Sep 17 00:00:00 2001 From: David Corbett Date: Sun, 12 Jan 2020 22:42:04 -0500 Subject: [PATCH 098/104] Suppress shell session exit messages on macOS --- bash_completion.bash | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/bash_completion.bash b/bash_completion.bash index 7abb731..a7f7b3c 100755 --- a/bash_completion.bash +++ b/bash_completion.bash @@ -82,6 +82,12 @@ _realpath () return 1 # failure fi + # suppress shell session termination messages on macOS + shell_session_save() + { + false + } + # reassemble realpath echo "$tmppwd"/"${1##*/}" return 1 #success From a191dca2d0181f58eb9a29af0be8368b6cc3097e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Stefan=20Gasterst=C3=A4dt?= Date: Tue, 21 Apr 2020 06:36:32 +0200 Subject: [PATCH 099/104] Fix one-line command line call (#94) --- readme.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/readme.md b/readme.md index 64481f9..171bf15 100644 --- a/readme.md +++ b/readme.md @@ -20,7 +20,7 @@ Example install manually: Example install as a one-line command line call for Debian and other distro: -`sudo wget https://raw.github.com/dimaj/maven-bash-completion/master/bash_completion.bash --output-document /etc/bash_completion.d/mvn` +`sudo wget https://raw.github.com/juven/maven-bash-completion/master/bash_completion.bash --output-document /etc/bash_completion.d/mvn` ## Usage From bd780f7a4bbbdfaa2842e576a1a171d33d053c0a Mon Sep 17 00:00:00 2001 From: Dan Leong Date: Tue, 21 Apr 2020 05:44:56 +0100 Subject: [PATCH 100/104] Adding jetty:run-war jetty:deploy-war jetty:start jetty:stop jetty:effective-web-xml as described on http://www.eclipse.org/jetty/documentation/current/jetty-maven-plugin.html (#80) Co-authored-by: Dan Leong --- bash_completion.bash | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bash_completion.bash b/bash_completion.bash index a7f7b3c..c7042b4 100755 --- a/bash_completion.bash +++ b/bash_completion.bash @@ -166,7 +166,7 @@ _mvn() local plugin_goals_javadoc="javadoc:javadoc|javadoc:jar|javadoc:aggregate" local plugin_goals_jboss="jboss:start|jboss:stop|jboss:deploy|jboss:undeploy|jboss:redeploy" local plugin_goals_jboss_as="jboss-as:add-resource|jboss-as:deploy|jboss-as:deploy-only|jboss-as:deploy-artifact|jboss-as:redeploy|jboss-as:redeploy-only|jboss-as:undeploy|jboss-as:undeploy-artifact|jboss-as:run|jboss-as:start|jboss-as:shutdown|jboss-as:execute-commands" - local plugin_goals_jetty="jetty:run|jetty:run-exploded|jetty:run-forked" + local plugin_goals_jetty="jetty:run|jetty:run-war|jetty:run-exploded|jetty:deploy-war|jetty:run-forked|jetty:start|jetty:stop|jetty:effective-web-xml" local plugin_goals_jxr="jxr:jxr" local plugin_goals_license="license:format|license:check" local plugin_goals_liquibase="liquibase:changelogSync|liquibase:changelogSyncSQL|liquibase:clearCheckSums|liquibase:dbDoc|liquibase:diff|liquibase:dropAll|liquibase:help|liquibase:migrate|liquibase:listLocks|liquibase:migrateSQL|liquibase:releaseLocks|liquibase:rollback|liquibase:rollbackSQL|liquibase:status|liquibase:tag|liquibase:update|liquibase:updateSQL|liquibase:updateTestingRollback" From 30c4f91797cbe87b6618e7561a682180c714f47d Mon Sep 17 00:00:00 2001 From: ZsergUA Date: Tue, 21 Apr 2020 07:46:14 +0300 Subject: [PATCH 101/104] Added support for formatter-maven-plugin (#72) Auto-completion support for formatter-maven-plugin http://code.revelc.net/formatter-maven-plugin/ --- bash_completion.bash | 1 + 1 file changed, 1 insertion(+) diff --git a/bash_completion.bash b/bash_completion.bash index c7042b4..2f7c428 100755 --- a/bash_completion.bash +++ b/bash_completion.bash @@ -191,6 +191,7 @@ _mvn() local plugin_goals_spring_boot="spring-boot:run|spring-boot:repackage" local plugin_goals_jgitflow="jgitflow:feature-start|jgitflow:feature-finish|jgitflow:release-start|jgitflow:release-finish|jgitflow:hotfix-start|jgitflow:hotfix-finish|jgitflow:build-number" local plugin_goals_wildfly="wildfly:add-resource|wildfly:deploy|wildfly:deploy-only|wildfly:deploy-artifact|wildfly:redeploy|wildfly:redeploy-only|wildfly:undeploy|wildfly:undeploy-artifact|wildfly:run|wildfly:start|wildfly:shutdown|wildfly:execute-commands" + local plugin_goals_formatter="formatter:format|formatter:help" ## some plugin (like jboss-as) has '-' which is not allowed in shell var name, to use '_' then replace local common_plugins=`compgen -v | grep "^plugin_goals_.*" | sed 's/plugin_goals_//g' | tr '_' '-' | tr '\n' '|'` From 08cb3bb6d33172752b44c21277a6edf40c04c306 Mon Sep 17 00:00:00 2001 From: Manfred Moser Date: Mon, 20 Apr 2020 21:47:53 -0700 Subject: [PATCH 102/104] Add formatter:validate goal Signed-off-by: Manfred Moser Signed-off-by: Manfred Moser --- bash_completion.bash | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bash_completion.bash b/bash_completion.bash index 2f7c428..3046024 100755 --- a/bash_completion.bash +++ b/bash_completion.bash @@ -191,7 +191,7 @@ _mvn() local plugin_goals_spring_boot="spring-boot:run|spring-boot:repackage" local plugin_goals_jgitflow="jgitflow:feature-start|jgitflow:feature-finish|jgitflow:release-start|jgitflow:release-finish|jgitflow:hotfix-start|jgitflow:hotfix-finish|jgitflow:build-number" local plugin_goals_wildfly="wildfly:add-resource|wildfly:deploy|wildfly:deploy-only|wildfly:deploy-artifact|wildfly:redeploy|wildfly:redeploy-only|wildfly:undeploy|wildfly:undeploy-artifact|wildfly:run|wildfly:start|wildfly:shutdown|wildfly:execute-commands" - local plugin_goals_formatter="formatter:format|formatter:help" + local plugin_goals_formatter="formatter:format|formatter:help|formatter:validate" ## some plugin (like jboss-as) has '-' which is not allowed in shell var name, to use '_' then replace local common_plugins=`compgen -v | grep "^plugin_goals_.*" | sed 's/plugin_goals_//g' | tr '_' '-' | tr '\n' '|'` From 2699bb7313ff8bb1f68292efd753e510fd2117e7 Mon Sep 17 00:00:00 2001 From: Manfred Moser Date: Mon, 20 Apr 2020 22:01:55 -0700 Subject: [PATCH 103/104] Add tomcat redeploy goal Signed-off-by: Manfred Moser Signed-off-by: Manfred Moser --- bash_completion.bash | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/bash_completion.bash b/bash_completion.bash index 3046024..8128943 100755 --- a/bash_completion.bash +++ b/bash_completion.bash @@ -181,8 +181,8 @@ _mvn() local plugin_goals_sonar="sonar:sonar|sonar:help" local plugin_goals_source="source:aggregate|source:jar|source:jar-no-fork" local plugin_goals_surefire="surefire:test" - local plugin_goals_tomcat6="tomcat6:help|tomcat6:run|tomcat6:run-war|tomcat6:run-war-only|tomcat6:stop|tomcat6:deploy|tomcat6:undeploy" - local plugin_goals_tomcat7="tomcat7:help|tomcat7:run|tomcat7:run-war|tomcat7:run-war-only|tomcat7:deploy" + local plugin_goals_tomcat6="tomcat6:help|tomcat6:run|tomcat6:run-war|tomcat6:run-war-only|tomcat6:stop|tomcat6:deploy|tomcat6:redeploy|tomcat6:undeploy" + local plugin_goals_tomcat7="tomcat7:help|tomcat7:run|tomcat7:run-war|tomcat7:run-war-only|tomcat7:deploy|tomcat7:redeploy|tomcat7:undeploy" local plugin_goals_tomcat="tomcat:help|tomcat:start|tomcat:stop|tomcat:deploy|tomcat:undeploy" local plugin_goals_liberty="liberty:create-server|liberty:start-server|liberty:stop-server|liberty:run-server|liberty:deploy|liberty:undeploy|liberty:java-dump-server|liberty:dump-server|liberty:package-server" local plugin_goals_versions="versions:display-dependency-updates|versions:display-plugin-updates|versions:display-property-updates|versions:update-parent|versions:update-properties|versions:update-child-modules|versions:lock-snapshots|versions:unlock-snapshots|versions:resolve-ranges|versions:set|versions:use-releases|versions:use-next-releases|versions:use-latest-releases|versions:use-next-snapshots|versions:use-latest-snapshots|versions:use-next-versions|versions:use-latest-versions|versions:commit|versions:revert" From 216cd667b6119fe200c98b1ac2d030ac002be197 Mon Sep 17 00:00:00 2001 From: Jiri Pejchal Date: Tue, 21 Apr 2020 07:13:02 +0200 Subject: [PATCH 104/104] Add support for maven spotbugs plugin (#100) Fixes #99 --- bash_completion.bash | 1 + 1 file changed, 1 insertion(+) diff --git a/bash_completion.bash b/bash_completion.bash index 8128943..d961eba 100755 --- a/bash_completion.bash +++ b/bash_completion.bash @@ -180,6 +180,7 @@ _mvn() local plugin_goals_site="site:site|site:deploy|site:run|site:stage|site:stage-deploy" local plugin_goals_sonar="sonar:sonar|sonar:help" local plugin_goals_source="source:aggregate|source:jar|source:jar-no-fork" + local plugin_goals_spotbugs="spotbugs:spotbugs|spotbugs:check|spotbugs:gui|spotbugs:help" local plugin_goals_surefire="surefire:test" local plugin_goals_tomcat6="tomcat6:help|tomcat6:run|tomcat6:run-war|tomcat6:run-war-only|tomcat6:stop|tomcat6:deploy|tomcat6:redeploy|tomcat6:undeploy" local plugin_goals_tomcat7="tomcat7:help|tomcat7:run|tomcat7:run-war|tomcat7:run-war-only|tomcat7:deploy|tomcat7:redeploy|tomcat7:undeploy"