[Lunar-commits] <moonbase> maven2-bin: Initial import.

Stefan Wold ratler at lunar-linux.org
Sat Mar 12 12:22:10 CET 2011


commit 12a1c966cc81a2b5a92b7796311472708ee8b647
Author: Stefan Wold <ratler at lunar-linux.org>
Date:   Sat Mar 12 12:22:10 2011 +0100

    maven2-bin: Initial import.
    
    - Added CONFLICTS for maven-bin
---
 java/maven-bin/CONFLICTS            |    1 +
 java/maven2-bin/BUILD               |   14 +
 java/maven2-bin/CONFLICTS           |    1 +
 java/maven2-bin/DEPENDS             |    1 +
 java/maven2-bin/DETAILS             |   18 +
 java/maven2-bin/profile.d/maven2.rc |  816 +++++++++++++++++++++++++++++++++++
 6 files changed, 851 insertions(+), 0 deletions(-)

diff --git a/java/maven-bin/CONFLICTS b/java/maven-bin/CONFLICTS
new file mode 100644
index 0000000..f00f5f0
--- /dev/null
+++ b/java/maven-bin/CONFLICTS
@@ -0,0 +1 @@
+conflicts maven2-bin
diff --git a/java/maven2-bin/BUILD b/java/maven2-bin/BUILD
new file mode 100644
index 0000000..2b1603d
--- /dev/null
+++ b/java/maven2-bin/BUILD
@@ -0,0 +1,14 @@
+(
+
+  MVNSHARE=/usr/share/maven
+
+  rm -f bin/*.bat &&
+  prepare_install &&
+  install -m 755 -d $MVNSHARE/ &&
+  cp -rp {bin,boot,conf,lib} $MVNSHARE/ &&
+  ln -sf $MVNSHARE/bin/mvn /usr/bin/mvn &&
+  ln -sf $MVNSHARE/bin/mvnDebug /usr/bin/mvnDebug &&
+  ln -sf $MVNSHARE/bin/m2 /usr/bin/m2 &&
+
+  gather_docs LICENSE* NOTICE* README*
+) > $C_FIFO 2>&1
diff --git a/java/maven2-bin/CONFLICTS b/java/maven2-bin/CONFLICTS
new file mode 100644
index 0000000..7ed7d20
--- /dev/null
+++ b/java/maven2-bin/CONFLICTS
@@ -0,0 +1 @@
+conflicts maven-bin
diff --git a/java/maven2-bin/DEPENDS b/java/maven2-bin/DEPENDS
new file mode 100644
index 0000000..a2a3495
--- /dev/null
+++ b/java/maven2-bin/DEPENDS
@@ -0,0 +1 @@
+depends %JAVA_SDK
diff --git a/java/maven2-bin/DETAILS b/java/maven2-bin/DETAILS
new file mode 100644
index 0000000..cfe452e
--- /dev/null
+++ b/java/maven2-bin/DETAILS
@@ -0,0 +1,18 @@
+          MODULE=maven2-bin
+         VERSION=2.2.1
+          SOURCE=apache-maven-${VERSION}-bin.tar.bz2
+      SOURCE_URL=http://ftp.heanet.ie/mirrors/www.apache.org/dist/maven/binaries/
+SOURCE_DIRECTORY=$BUILD_DIRECTORY/apache-maven-$VERSION
+      SOURCE_VFY=sha1:47ac0417a200cbc6d1b967d6b7c6ae1138e9e3e0
+        WEB_SITE="http://maven.apache.org/"
+      MAINTAINER=ratler at lunar-linux.org
+         ENTERED=20110312
+         UPDATED=20110312
+           SHORT="A software project management and comprehension tool"
+
+cat <<EOF
+Maven is a software project management and comprehension tool. Based
+on the concept of a project object model (POM), Maven can manage a
+project's build, reporting and documentation from a central piece
+of information.
+EOF
diff --git a/java/maven2-bin/profile.d/maven2.rc b/java/maven2-bin/profile.d/maven2.rc
new file mode 100644
index 0000000..53ab930
--- /dev/null
+++ b/java/maven2-bin/profile.d/maven2.rc
@@ -0,0 +1,816 @@
+# Programmable completion for the Maven mvn command under bash. Source
+# this file (or on some systems add it to ~/.bash_completion and start a new
+# shell) and bash's completion mechanism will know all about mvn's options!
+#
+# Copyright (C) 2009, Ludovic Claude <ludovic.claude at laposte.net>
+# Base on git completion script, Copyright (C) 2006,2007 Shawn O. Pearce <spearce at spearce.org>
+# Distributed under the GNU General Public License, version 2.0.
+
+# Customization: you can always edit this file (as root) and add or remove plugins and options in the lists defined below.
+# If you have some interesting changes, please send patches to ludovic.claude at laposte.net
+# Alternatively, you can create a file called bash_completion in your ~/.m2 directory.
+# This file can override any of the variables defined below (__mvnopts, __mvnoptsWithArg __mvnparams, __mvnpackaging, 
+# __mvnclassifiers, __mvndefault_phases, __mvnclean_phases, __mvnsite_phases, __mvncore_plugins, __mvnpackaging_plugins,
+# __mvnreporting_plugins, __mvntools_plugins, __mvnide_plugins, __mvnother_plugins, __mvncustom_plugins)
+# __mvncustom_plugins is the best variable to use to add new plugins and goals
+# 
+
+__mvnopts="--also-make --also-make-dependents --file --debug --batch-mode --lax-checksums --strict-checksums --check-plugin-updates --define 
+  --errors --encrypt-master-password --encrypt-password --fail-at-end --fail-fast --fail-never --help --non-recursive --no-plugin-registry 
+  --no-plugin-updates --offline --activate-profiles --projects --quiet --reactor --resume-from --settings --global-settings --update-snapshots 
+  --update-plugins --version --show-version"
+
+__mvnoptsWithArg="--file|--define|--encrypt-master-password|--encrypt-password|--resume-from|--settings|--global-settings|--activate-profiles|--projects"
+
+__mvnparams="-Dmaven.test.skip=true -Dsurefire.useFile=false -Dmaven.surefire.debug -Xdebug -Xnoagent -Djava.compiler=NONE 
+  -Xrunjdwp:transport=dt_socket,address=5005,server=y,suspend=y -Dverbose -Dmaven.test.failure.ignore=true"
+
+__mvnpackaging="pom jar maven-plugin ejb war ear rar par"
+__mvnclassifiers="sources test-jar"
+
+# phases for the default lifecycle
+__mvndefault_phases="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 
+	 package 
+	 pre-integration-test 
+	 integration-test 
+	 post-integration-test 
+	 verify 
+	 install 
+	 deploy"
+
+# phases for the clean lifecycle
+__mvnclean_phases="pre-clean
+	 clean
+	 post-clean"
+
+# phases for the site lifecycle
+__mvnsite_phases="pre-site
+	 site
+	 post-site
+	 site-deploy"
+
+# core plugin targets
+__mvncore_plugins="clean:clean
+	 clean:help
+	 compiler:compile
+	 compiler:testCompile
+	 compiler:help
+	 deploy:deploy
+	 deploy:deploy-file
+	 deploy:help
+	 install:install
+	 install:install-file
+	 install:help
+	 resources:resources
+	 resources:testResources
+	 resources:copy-resources
+	 resources:help
+	 site:site
+	 site:deploy
+	 site:run
+	 site:stage
+	 site:stage-deploy
+	 site:attach-descriptor
+	 site:jar
+	 site:help
+	 surefire:test
+	 surefire:help
+	 verifier:verify
+	 verifier:help"
+
+# packaging plugin targets
+__mvnpackaging_plugins="ear:ear
+	 ear:generate-application-xml
+	 ear:help
+	 jar:jar
+	 jar:test-jar
+	 jar:sign
+	 jar:sign-verify
+	 jar:help
+	 rar:rar
+	 rar:help
+	 war:war
+	 war:exploded
+	 war:inplace
+	 war:manifest
+	 war:help
+	 shade:shade
+	 shade:help"
+
+# reporting plugin targets
+__mvnreporting_plugins="changelog:changelog
+	 changelog:dev-activity
+	 changelog:file-activity
+	 changelog:help
+	 changes:announcement-mail
+	 changes:announcement-generate
+	 changes:changes-report
+	 changes:jira-report
+	 changes:changes-validate
+	 changes:help
+	 checkstyle:checkstyle
+	 checkstyle:check
+	 checkstyle:help
+	 doap:generate
+	 doap:help
+	 docck:check
+	 docck:help
+	 javadoc:javadoc
+	 javadoc:test-javadoc
+	 javadoc:aggregate
+	 javadoc:test-aggregate
+	 javadoc:jar
+	 javadoc:test-jar
+	 javadoc:help
+	 jxr:jxr
+	 jxr:test-jxr
+	 jxr:help
+	 pmd:pmd
+	 pmd:cpd
+	 pmd:check
+	 pmd:cpd-check
+	 pmd:help
+	 project-info-reports:cim
+	 project-info-reports:dependencies
+	 project-info-reports:dependency-convergence
+	 project-info-reports:dependency-management
+	 project-info-reports:index
+	 project-info-reports:issue-tracking
+	 project-info-reports:license
+	 project-info-reports:mailing-list
+	 project-info-reports:plugin-management
+	 project-info-reports:project-team
+	 project-info-reports:scm
+	 project-info-reports:summary
+	 project-info-reports:help
+	 surefire-report:report
+	 surefire-report:report-only
+	 surefire-report:help"
+
+# tools plugin targets
+__mvntools_plugins="ant:ant
+	 ant:clean
+	 ant:help
+	 antrun:run
+	 antrun:help
+	 archetype:create
+	 archetype:generate
+	 archetype:create-from-project
+	 archetype:crawl
+	 archetype:help
+	 assembly:assembly
+	 assembly:directory
+	 assembly:directory-single
+	 assembly:single
+	 assembly:help
+	 dependency:copy
+	 dependency:copy-dependencies
+	 dependency:unpack
+	 dependency:unpack-dependencies
+	 dependency:resolve
+	 dependency:list
+	 dependency:sources
+	 dependency:resolve-plugins
+	 dependency:go-offline
+	 dependency:purge-local-repository
+	 dependency:build-classpath
+	 dependency:analyze
+	 dependency:analyze-dep-mgt
+	 dependency:tree
+	 dependency:help
+	 enforcer:enforce
+	 enforcer:display-info
+	 enforcer:help
+	 gpg:sign
+	 gpg:sign-and-deploy-file
+	 gpg:help
+	 help:active-profiles
+	 help:all-profiles
+	 help:describe
+	 help:effective-pom
+	 help:effective-settings
+	 help:evaluate
+	 help:expressions
+	 help:system
+	 invoker:install
+	 invoker:run
+	 invoker:help
+	 one:convert
+	 one:deploy-maven-one-repository
+	 one:install-maven-one-repository
+	 one:maven-one-plugin
+	 one:help
+	 patch:apply
+	 patch:help
+	 pdf:pdf
+	 pdf:help
+	 plugin:descriptor
+	 plugin:report
+	 plugin:updateRegistry
+	 plugin:xdoc
+	 plugin:addPluginArtifactMetadata
+	 plugin:helpmojo
+	 plugin:help
+	 release:clean
+	 release:prepare
+	 release:rollback
+	 release:perform
+	 release:stage
+	 release:branch
+	 release:help
+	 reactor:resume
+	 reactor:make
+	 reactor:make-dependents
+	 reactor:make-scm-changes
+	 reactor:help
+	 remote-resources:bundle
+	 remote-resources:process
+	 remote-resources:help
+	 repository:bundle-create
+	 repository:bundle-pack
+	 repository:help
+	 scm:branch
+	 scm:validate
+	 scm:add
+	 scm:unedit
+	 scm:export
+	 scm:bootstrap
+	 scm:changelog
+	 scm:list
+	 scm:checkin
+	 scm:checkout
+	 scm:status
+	 scm:update
+	 scm:diff
+	 scm:update-subprojects
+	 scm:edit
+	 scm:tag
+	 scm:help
+	 source:aggregate
+	 source:jar
+	 source:test-jar
+	 source:jar-no-fork
+	 source:test-jar-no-fork
+	 source:help
+	 stage:copy
+	 stage:help"
+
+# IDE plugin targets
+__mvnide_plugins="eclipse:clean
+	 eclipse:configure-workspace
+	 eclipse:eclipse
+	 eclipse:help
+	 eclipse:install-plugins
+	 eclipse:m2eclipse
+	 eclipse:make-artifacts
+	 eclipse:myeclipse
+	 eclipse:myeclipse-clean
+	 eclipse:rad
+	 eclipse:rad-clean
+	 eclipse:remove-cache
+	 eclipse:to-maven
+	 idea:clean
+	 idea:help
+	 idea:idea
+	 idea:module
+	 idea:project
+	 idea:workspace"
+
+__mvnother_plugins="
+	 plexus:app plexus:bundle-application plexus:bundle-runtime plexus:descriptor plexus:runtime plexus:service
+	 jetty:run-war jetty:run
+	 cargo:start cargo:stop
+	 dbunit:export dbunit:operation
+	 hibernate3:hbm2cfgxml hibernate3:hbm2ddl hibernate3:hbm2doc hibernate3:hbm2hbmxml hibernate3:hbm2java hibernate3:schema-export
+	   hibernate3:schema-update
+	 groovy:compile groovy:console groovy:execute groovy:generateStubs groovy:generateTestStubs groovy:help groovy:providers groovy:shell
+	   groovy:testCompile
+	 gwt:compile gwt:eclipse gwt:eclipseTest gwt:generateAsync gwt:help gwt:i18n gwt:test
+	 javacc:help javacc:javacc javacc:jjdoc javacc:jjtree javacc:jjtree-javacc javacc:jtb javacc:jtb-javacc
+	 jboss:configure jboss:deploy jboss:harddeploy jboss:start jboss:stop jboss:undeploy
+	 jboss-packaging:esb jboss-packaging:esb-exploded jboss-packaging:har jboss-packaging:har-exploded jboss-packaging:sar jboss-packaging:sar-exploded
+	   jboss-packaging:sar-inplace jboss-packaging:spring
+	 jpox:enhance jpox:schema-create jpox:schema-dbinfo jpox:schema-delete jpox:schema-info jpox:schema-validate
+	 make:autoreconf make:chmod make:chown make:compile make:configure make:help make:make-clean make:make-dist make:make-install make:test
+	   make:validate-pom
+	 nbm:autoupdate nbm:branding nbm:cluster nbm:directory nbm:jar nbm:nbm nbm:populate-repository nbm:run-ide nbm:run-platform
+	 tomcat:deploy tomcat:exploded tomcat:info tomcat:inplace tomcat:list tomcat:redeploy tomcat:resources tomcat:roles tomcat:run tomcat:run-war
+	   tomcat:sessions tomcat:start tomcat:stop tomcat:undeploy
+	 wagon:copy wagon:download wagon:download-single wagon:help wagon:list wagon:merge-maven-repos wagon:upload wagon:upload-single
+	 was6:clean was6:ejbdeploy was6:help was6:installApp was6:wsAdmin was6:wsDefaultBindings was6:wsListApps was6:wsStartApp was6:wsStartServer
+	   was6:wsStopApp was6:wsStopServer was6:wsUninstallApp
+	 weblogic:appc weblogic:clientgen weblogic:clientgen9 weblogic:deploy weblogic:jwsc weblogic:listapps weblogic:redeploy weblogic:servicegen
+	   weblogic:start weblogic:stop weblogic:undeploy weblogic:wsdlgen"
+
+__mvncustom_plugins=""
+
+### End of customizable area
+
+if [ -e ~/.m2/bash_completion ]; then
+	source ~/.m2/bash_completion
+fi
+
+__mvnphases="${__mvndefault_phases} ${__mvnclean_phases} ${__mvnsite_phases}"
+
+__mvnall_plugin_and_goals="${__mvncore_plugins} ${__mvnpackaging_plugins} ${__mvnreporting_plugins} ${__mvntools_plugins} 
+  ${__mvnide_plugins} ${__mvnother_plugins} ${__mvncustom_plugins}"
+
+__mvnplugins=$(echo ${__mvnall_plugin_and_goals} | sed -re 's/:[^ \t]+/:\n/g' | sort -u | sed 's/[\s\n]//g')
+
+__mvncomp_1 ()
+{
+	local c IFS=' '$'\t'$'\n'
+	for c in $1; do
+		case "$c$2" in
+		--*=*) printf %s$'\n' "$c$2" ;;
+		*.)    printf %s$'\n' "$c$2" ;;
+		*)     printf %s$'\n' "$c$2 " ;;
+		esac
+	done
+}
+
+__mvncomp ()
+{
+	local genOpt=
+	if [ "$1" == "-nospace" ]; then
+		genOpt="true"
+		shift
+	fi
+	local cur="${COMP_WORDS[COMP_CWORD]}"
+	if [ $# -gt 2 ]; then
+		cur="$3"
+	fi
+	case "$cur" in
+	-*=)
+		COMPREPLY=()
+		;;
+	*)
+		local IFS=$'\n'
+		COMPREPLY=($(compgen -P "$2" \
+			-W "$(__mvncomp_1 "$1" "$4")" \
+			-- "$cur"))
+		;;
+	esac
+}
+
+__mvnlist_projects ()
+{
+	local poms=$(find . -name pom.xml -print)
+	echo $poms | while read -d ' ' POM; do
+		local DIR=$(dirname "$POM")
+		if [[ "$DIR" != "." ]]; then
+			echo "${DIR#./}"
+		fi
+	done
+}
+
+__mvnlist_goals ()
+{
+	local plugin=$1
+	local pfx=""
+	if [[ "$2" ]]; then
+		pfx=$2
+	fi
+	echo ${__mvnall_plugin_and_goals} | tr ' ' '\n' | grep "$plugin" | sed "s/.*:/${pfx}/g"
+}
+
+__mvnlist_poms ()
+{
+	for x in `find -type f -name pom.xml -or -name *.pom` ; do echo ${x#./} ; done
+}
+
+__mvnlist_jars ()
+{
+	for x in `find -type f -name *.jar` ; do echo ${x#./} ; done
+}
+
+__mvnlist_prefix ()
+{
+	local pfx=$1 IFS=' '$'\t'$'\n'
+	shift
+	local list=$@
+	for c in $list; do
+		echo "$pfx$c"
+	done
+}
+
+__mvnprefix_equals ()
+{
+	local cur=$1
+	local pfx=""
+	case "$COMP_WORDBREAKS" in
+	*=*) : great ;;
+	*)   pfx="${cur%%=*}=" ;;
+	esac
+	echo $pfx
+}
+
+__mvnprefix_colon ()
+{
+	local cur=$1
+	local pfx=""
+	case "$COMP_WORDBREAKS" in
+	*:*) : great ;;
+	*)   pfx="${cur%%:*}:" ;;
+	esac
+	echo $pfx
+}
+
+__mvnprefix_comma ()
+{
+	local cur=$1
+	local pfx=""
+	case "$COMP_WORDBREAKS" in
+	*,*) : great ;;
+	*)   pfx="${cur%%,*}," ;;
+	esac
+	echo $pfx
+}
+
+__mvnplugin_help ()
+{
+	local plugin=$1
+	local cur="${COMP_WORDS[COMP_CWORD]}"
+	cur="${cur#-D}"
+	case "${cur}" in
+	goal=*)
+		__mvncomp "$(__mvnlist_goals $plugin)" "$(__mvnprefix_equals $cur)" "${cur#*=}"
+		;;
+	*)
+		__mvncomp "detail lineLength= indentSize= $(__mvnlist_goals $plugin 'goal=')" "-D" "${cur}"
+		;;
+	esac
+}
+
+__mvnhelp_describe ()
+{
+	local cur="${COMP_WORDS[COMP_CWORD]}"
+	cur="${cur#-D}"
+	case "${cur}" in
+	cmd=*:*)
+		local plugin="${cur#*=}"
+		plugin="${plugin%%:*}:"
+		__mvncomp "$(__mvnlist_goals $plugin)" "$(__mvnprefix_colon $cur)" "${cur#*:}"
+		;;
+	cmd=*)
+		__mvncomp "${__mvnphases} ${__mvnall_plugin_and_goals}" "$(__mvnprefix_equals $cur)" "${cur#*=}"
+		;;
+	plugin=*)
+		__mvncomp "org.apache.maven.plugins:maven-" "$(__mvnprefix_equals $cur)" "${cur#*=}"
+		;;
+	groupId=*)
+		__mvncomp "org.apache.maven.plugins" "$(__mvnprefix_equals $cur)" "${cur#*=}"
+		;;
+	artifactId=*)
+		__mvncomp "" "$(__mvnprefix_equals $cur)" "${cur#*=}"
+		;;
+	*)
+		# present several cmd= options to block full completion and insertion of a space
+		__mvncomp "detail cmd=press cmd=tab plugin= groupId= artifactId=" "-D" "${cur}"
+		;;
+	esac
+}
+
+__mvndeploy_deploy ()
+{
+	local cur="${COMP_WORDS[COMP_CWORD]}"
+	cur="${cur#-D}"
+	__mvncomp "altDeploymentRepository= skip=true updateReleaseInfo=true" "-D" "${cur}"
+}
+
+__mvndeploy_deploy_file ()
+{
+	local cur="${COMP_WORDS[COMP_CWORD]}"
+	cur="${cur#-D}"
+	case "${cur}" in
+	file=*)
+		COMPREPLY=( $( compgen -f -P "$(__mvnprefix_equals $cur)" -- "${cur#*=}" ) )
+		;;
+	pomFile=*)
+		__mvncomp "$(__mvnlist_poms)" "$(__mvnprefix_equals $cur)" "${cur#*=}"
+		;;
+	packaging=*)
+		__mvncomp "${__mvnpackaging}" "$(__mvnprefix_equals $cur)" "${cur#*=}"
+		;;
+	*)
+		local options="artifactId= classifier= description= file=press file=tab generatePom=true groupId= pomFile=press pomFile=tab repositoryId= 
+		  repositoryLayout=legacy uniqueVersion=false url= version="
+		options="$options $(__mvnlist_prefix 'packaging=' ${__mvnpackaging} )"
+		__mvncomp "$options" "-D" "${cur}"
+		;;
+	esac
+}
+
+__mvninstall_install_file ()
+{
+	local cur="${COMP_WORDS[COMP_CWORD]}"
+	cur="${cur#-D}"
+	case "${cur}" in
+	file=*)
+		COMPREPLY=( $( compgen -f -P "$(__mvnprefix_equals $cur)" -- "${cur#*=}" ) )
+		;;
+	pomFile=*)
+		__mvncomp "$(__mvnlist_poms)" "$(__mvnprefix_equals $cur)" "${cur#*=}"
+		;;
+	sources=*)
+		__mvncomp "$(__mvnlist_jars)" "$(__mvnprefix_equals $cur)" "${cur#*=}"
+		;;
+	javadoc=*)
+		__mvncomp "$(__mvnlist_jars)" "$(__mvnprefix_equals $cur)" "${cur#*=}"
+		;;
+	packaging=*)
+		__mvncomp "${__mvnpackaging}" "$(__mvnprefix_equals $cur)" "${cur#*=}"
+		;;
+	*)
+		local options="artifactId= classifier= file=press file=tab generatePom=true groupId= pomFile=press pomFile=tab
+		  createChecksum=true url= version= sources=press sources=tab javadoc=press javadoc=tab"
+		options="$options $(__mvnlist_prefix 'packaging=' ${__mvnpackaging} )"
+		__mvncomp "$options" "-D" "${cur}"
+		;;
+	esac
+}
+
+__mvnarchetype_generate ()
+{
+	local cur="${COMP_WORDS[COMP_CWORD]}"
+	cur="${cur#-D}"
+	__mvncomp "archetypeArtifactId= archetypeCatalog= archetypeGroupId= archetypeRepository= archetypeVersion= basedir= goals= interactiveMode=" 
+		"-D" "${cur}"
+}
+
+__mvndependency_x_dependencies ()
+{
+	local cur="${COMP_WORDS[COMP_CWORD]}"
+	cur="${cur#-D}"
+	case "${cur}" in
+	classifier=*)
+		__mvncomp "${__mvnclassifiers}" "$(__mvnprefix_equals $cur)" "${cur#*=}"
+		;;	
+	*)
+		__mvncomp "$(__mvnlist_prefix 'classifier=' ${__mvnclassifiers})" "-D" "${cur}"
+		;;
+	esac
+}
+
+__mvndependency_resolve ()
+{
+	local cur="${COMP_WORDS[COMP_CWORD]}"
+	cur="${cur#-D}"
+	case "${cur}" in
+	classifier=*)
+		__mvncomp "${__mvnclassifiers}" "$(__mvnprefix_equals $cur)" "${cur#*=}"
+		;;	
+	*)
+		__mvncomp "$(__mvnlist_prefix 'classifier=' ${__mvnclassifiers}) excludeArtifactIds= excludeClassifiers= excludeGroupIds=
+			excludeScope= excludeTransitive=true excludeTypes= includeArtifactIds= includeClassifiers= includeGroupIds= includeScope= 
+			includeTypes= markersDirectory= outputAbsoluteArtifactFilename= outputFile= outputScope=false overWriteIfNewer=false
+			overWriteReleases=true overWriteSnapshots=true silent=true type=" 
+			"-D" "${cur}"
+		;;
+	esac
+}
+
+__mvndependency_purge_local_repository ()
+{
+	local fuzziness="file version artifactId groupId"
+	local cur="${COMP_WORDS[COMP_CWORD]}"
+	cur="${cur#-D}"
+	case "${cur}" in
+	resolutionFuzziness=*)
+		__mvncomp "${fuzziness}" "$(__mvnprefix_equals $cur)" "${cur#*=}"
+		;;	
+	*)
+		__mvncomp "actTransitively=false exclude= reResolve=false verbose=true
+			$(__mvnlist_prefix 'resolutionFuzziness=' ${fuzziness})" 
+			"-D" "${cur}"
+		;;
+	esac
+}
+
+__mvndependency_analyze ()
+{
+	local cur="${COMP_WORDS[COMP_CWORD]}"
+	cur="${cur#-D}"
+	__mvncomp "ignoreNonCompile=true outputXML=true scriptableFlag= scriptableOutput=true verbose=true" "-D" "${cur}"
+}
+
+__mvndependency_analyze_dep_mgt ()
+{
+	local cur="${COMP_WORDS[COMP_CWORD]}"
+	cur="${cur#-D}"
+	__mvncomp "ignoreDirect=false" "-D" "${cur}"
+}
+
+__mvndependency_tree ()
+{
+	local tokens="whitespace standard extended"
+	local cur="${COMP_WORDS[COMP_CWORD]}"
+	cur="${cur#-D}"
+	case "${cur}" in
+	tokens=*)
+		__mvncomp "${tokens}" "$(__mvnprefix_equals $cur)" "${cur#*=}"
+		;;	
+	*)
+		__mvncomp "excludes= includes= outputFile= scope= verbose=true
+			$(__mvnlist_prefix 'tokens=' ${tokens})" 
+			"-D" "${cur}"
+		;;
+	esac
+}
+
+__mvnrelease_prepare ()
+{
+	local cur="${COMP_WORDS[COMP_CWORD]}"
+	cur="${cur#-D}"
+	__mvncomp "username= dryRun=true" "-D" "${cur}"
+}
+
+__mvnscm_checkin ()
+{
+	local versionType="branch tag revision"
+	local cur="${COMP_WORDS[COMP_CWORD]}"
+	cur="${cur#-D}"
+	case "${cur}" in
+	scmVersionType=*)
+		__mvncomp "${versionType}" "$(__mvnprefix_equals $cur)" "${cur#*=}"
+		;;	
+	*)
+		__mvncomp "username= message= passphrase= password= scmVersion= $(__mvnlist_prefix 'scmVersionType=' ${versionType})" "-D" "${cur}"
+		;;
+	esac
+}
+
+_mvn ()
+{
+	local i prev c=1 cmd option optionArg=0 cmdcomplete=0
+	local cur="${COMP_WORDS[COMP_CWORD]}"
+	COMPREPLY=() 
+
+	#echo " cur $cur"
+
+	# discover the options and the command
+	while [ $c -le $COMP_CWORD ]; do
+		prev=$i
+		i="${COMP_WORDS[c]}"
+		c=$((++c))
+		optionArg=0
+		# skip option argument
+		if [[ $prev == @(${__mvnoptsWithArg}) ]]; then
+			optionArg=1
+			continue;
+		fi
+
+		#echo "c $c i '$i'"
+
+		if [[ $cmdcomplete == -3 ]]; then
+		    cmdcomplete=1 # complete command
+		    break;
+		fi
+
+		if [[ "$i" == "" ]]; then
+		  if [[ $cmd ]]; then
+		    cmdcomplete=1 # complete command
+		    break;
+		  fi
+		  continue
+		fi
+
+		if [[ "$i" == ":" ]]; then
+		  if [[ $cmd ]]; then
+		    cmdcomplete=$((cmdcomplete-1))
+		    cmd="${cmd}:"
+		  fi
+		  continue
+		fi
+
+		case "$i" in
+		--version|--help) return ;;
+		-*) option="$i" ;;
+		*)  if [[ ! $cmd ]]; then 
+		      # incomplete command 
+		      cmdcomplete=$((cmdcomplete-1))
+		      cmd="$i"
+		      local next=$c
+		      if [[ $next -lt $COMP_CWORD ]]; then
+			#echo "next ${COMP_WORDS[next]}"
+		        if [[ "${COMP_WORDS[next]}" != ":" ]]; then
+		          break
+		        fi
+		      fi
+		    else
+		      cmdcomplete=$((cmdcomplete-1))
+		      cmd="$cmd$i"
+		    fi
+		    ;;
+		esac
+	done
+
+	#echo "cmd $cmd cmdcomplete $cmdcomplete"
+
+	if [[ ! $cmd && $option && ($optionArg == 0) ]]; then
+		case "$option" in
+		--file)
+			__mvncomp "$(__mvnlist_poms)"
+			return
+			;;
+		--define)
+			__mvncomp "maven.test.skip=true"
+			return
+			;;
+		--resume-from)
+			__mvncomp "$(__mvnlist_projects)"
+			return
+			;;
+		--projects)
+			case "${cur}" in
+			*,*)
+				__mvncomp "$(__mvnlist_projects)" "$(__mvnprefix_comma $cur)" "${cur#*,}"
+				;;
+			*)	__mvncomp "$(__mvnlist_projects)"
+				;;
+			esac
+			return
+			;;
+		--settings|--global-settings)
+			COMPREPLY=( $( compgen -f -- $cur ) )
+			return
+			;;
+		--*) 
+			COMPREPLY=() 
+			;;
+		esac
+	fi
+
+	if [ $cmdcomplete -lt 0 ]; then
+		#echo "incomplete cmd $cmd"
+		case "${cmd}" in
+		*:)
+			local plugin="${cmd%%:}:"
+			#echo "plugin $plugin"
+			__mvncomp "$(__mvnlist_goals $plugin)" "$(__mvnprefix_colon $cmd)" ""
+			;;
+		*:*)
+			local plugin="${cmd%%:*}:"
+			#echo "plugin $plugin"
+			__mvncomp "$(__mvnlist_goals $plugin)" "$(__mvnprefix_colon $cmd)" "${cmd#*:}"
+			;;
+		*)     __mvncomp "${__mvnphases} ${__mvnall_plugin_and_goals}" ;;
+		esac
+		return
+	fi
+
+	if [ -z "$cmd" ]; then
+		#echo "empty cmd cur $cur"
+		case "${cur}" in
+		-D*=*) COMPREPLY=() ;;
+		-*)    __mvncomp "${__mvnopts} ${__mvnparams}" ;;
+		--*)   __mvncomp "${__mvnopts}" ;;
+		*)     __mvncomp "${__mvnphases} ${__mvnall_plugin_and_goals}" ;;
+		esac
+		return
+	fi
+
+	#echo "cmd $cmd"
+
+	case "$cmd" in
+	*:help) 
+		local plugin="${cmd%%:*}:"
+		__mvnplugin_help $plugin 
+		;;
+	help:describe) 			__mvnhelp_describe ;;
+	deploy:deploy)			__mvndeploy_deploy ;;	
+	deploy:deploy-file)		__mvndeploy_deploy_file ;;	
+	archetype:generate)		__mvnarchetype_generate ;;	
+	dependency:copy-dependencies)	__mvndependency_x_dependencies ;;	
+	dependency:unpack-dependencies)	__mvndependency_x_dependencies ;;	
+	dependency:resolve)		__mvndependency_resolve ;;
+	dependency:resolve-plugins)	__mvndependency_resolve ;;
+	dependency:source)		__mvndependency_resolve ;;
+	dependency:go-offline)		__mvndependency_resolve ;;
+	dependency:purge-local-repository) __mvndependency_purge_local_repository ;;
+	dependency:analyze)		__mvndependency_analyze ;;
+	dependency:analyze-dep-mgt)	__mvndependency_analyze_dep_mgt ;;
+	install:install-file)		__mvninstall_install_file ;;
+	release:prepare)		__mvnrelease_prepare ;;
+	scm:checkin)			__mvnscm_checkin ;;
+	*)
+		;;
+	esac
+}
+
+complete -o default -o nospace -F _mvn mvn mvnDebug
+


More information about the Lunar-commits mailing list