Zsh(oh-my-zsh)的Maven自动提示插件(zsh-maven-complection)

简介:

1.有关插件的小故事(story)

我一直使用Zsh作为日常Shell工具,确切来说是oh-my-zsh,关于zsh我专门写过一篇博客我最喜爱的工具-oh-my-zsh

从一年前我开始放弃Windows专用Linux(Ubuntu)作为开发环境,其中强大的Shell最吸引我的最主要因素;关于Linux之前也写过一篇博文我是如何在Linux(Ubuntu)上工作的?

这个插件的主页:https://github.com/juven/maven-bash-completion

说起这个插件得从认识Juven开始,认识Juven是因为学习使用Maven,我记得是在我认识他的初期开始提到过bash的maven自动提示插件,当时好像还没用转移到Linux所以没在意。后来转移到Linux之后使用过一段时间的maven-bash-completion,但是后来因为转移到了zsh而且这个插件不能兼容zsh所以后来就放弃了。

到了zsh环境下发现oh-my-zsh中有一个maven自动提示的插件,插件的名称为:mvn.plugin.zsh。虽然功能很少但是勉强可以使用,因为忙所以就没用折腾(给自己找理由……)。

但是今天在和Juven聊天的时候又提到了这个话题,贴个图吧,不打字了。

就是这段简单的聊天我决定自己动手实现zsh的自动提示,当即动手开工……

感谢Garin、Juven怂恿了我……

2.插件功能(features)

因为oh-my-zsh中原本就有一个mvn的插件,但是已经一年多没有更新了,我就直接拿过来修改,把bash的自动提示功能移植到zsh中,使用的工具就是几个vim的操作。

2.1 支持的插件(Support p

lugins)

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

2.2 生命周期(lifecycle)

clean process-resources compile process-test-resources test-compile test package verify install deploy site

2.3 参数(options)

-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

3.截图欣赏(screenshots)

3.1 特色功能(自动补全测试类)

除了基本的提示之外我还在原有的mvn.plugin.zsh的基础上进行了优化,当输入mvn -Dtest时按下TAB键会自动把src/test/java目录下面所有的.java类列出来作为-Dtest的参数,如图:

4.如何安装(install)

请先安装oh-my-zsh,具体参考:我最喜爱的工具-oh-my-zsh

oh-my-zsh的官方github地址:https://github.com/robbyrussell/oh-my-zsh

插件源码https://github.com/henryyan/oh-my-zsh/blob/master/plugins/mvn/mvn.plugin.zsh

安装完成之后记得在~/.zshrc中启用maven插件:


plugins=(ant mvn svn git git-flow)
我已经给oh-my-zsh提交了合并请求,如果顺利接下来可能会合并到master分支。

暂时先从我的项目里面克隆,或者直接下载mvn.plugin.zsh覆盖到本地。


相关文章
|
6月前
|
Java 应用服务中间件 Apache
Maven程序 tomcat插件安装与web工程启动
Maven程序 tomcat插件安装与web工程启动
62 0
|
5月前
|
XML Java Maven
maven总结三: 常用插件
maven总结三: 常用插件
51 3
|
2月前
|
Java 编译器 测试技术
全面理解Maven Compiler Plugin-Maven编译插件
【10月更文挑战第16天】
260 1
|
5月前
|
Java 测试技术 Maven
Maven 插件
Maven包含clean、default(build)、site三大生命周期,分别处理项目清理、部署和文档创建。每个生命周期由多个阶段组成,充当标准化接口,实际工作由插件执行。例如,`mvn clean`调用的是clean生命周期的clean阶段,其实现由maven-clean-plugin插件完成。Maven是一个依赖插件的框架,插件负责任务如生成jar/war、编译、测试、文档和报告。通过`mvn plugin-name:goal-name`命令执行插件目标。
|
4月前
|
Java Maven Spring
Maven重打包问题之maven-shade-plugin插件对于重复的class文件会如何处理
Maven重打包问题之maven-shade-plugin插件对于重复的class文件会如何处理
|
4月前
|
Java jenkins 持续交付
jenkins学习笔记之十七:使用插件及maven上传制品到nexus
jenkins学习笔记之十七:使用插件及maven上传制品到nexus
|
5月前
|
Java Maven
idea安装并使用maven依赖分析插件:Maven Helper
idea安装并使用maven依赖分析插件:Maven Helper
2621 7
|
5月前
|
数据可视化 Java 程序员
IDEA插件-Maven Helper
Maven Helper是一个用于Apache Maven项目的IntelliJ IDEA插件,它提供了一些有用的功能来帮助开发人员更好地管理和调试Maven项目。
706 0
IDEA插件-Maven Helper
|
4月前
|
Java Maven 开发者
"揭秘IDEA的神奇助手:Maven Helper插件,让你轻松驾驭复杂依赖,告别冲突噩梦!"
【8月更文挑战第20天】Maven Helper是一款提升Java开发者工作效率的IDEA插件,它能直观展示项目依赖关系并协助管理。主要功能包括依赖树视图、冲突检测与解决及依赖排除。安装简便,重启IDEA后即用。借助其“Dependencies”面板,开发者可以清晰了解依赖详情,快速定位并解决冲突问题,有效优化项目结构,提升开发效率。
254 0
|
5月前
|
Java 测试技术 Maven
Maven 插件
Maven包含clean、default/build、site三个生命周期,用于清理、构建和文档创建。每个生命周期由多个阶段构成,作为标准化步骤。比如`mvn clean`调用Clean生命周期的clean阶段,其实体实现是maven-clean-plugin。Maven依赖插件执行任务,如生成jar/war、编译、测试、文档等。插件通过`mvn plugin-name:goal-name`形式执行特定目标。