《阿里巴巴Java开发手册》IDEA插件与Eclipse插件使用指南

简介: 自10月14日《阿里巴巴Java开发手册》规约插件发布以来,就吸引了很多开发者的关注。如何更快速的掌握插件使用技巧,快速体验令人激动的自动化、智能化的插件协同工作?在搜集了一些开发者的使用反馈后,阿里巴巴Java开发手册P3C项目IDE插件主要开发者骏烈针对需求,整理了一份详细的插件使用指南,帮助大家更好地使用插件。

974713679d5fc7d1263f5038169b3d6461fec5e4

扫码或点我直达 免费领



自10月14日《阿里巴巴Java开发手册》规约插件发布以来,就吸引了很多开发者的关注。如何更快速的掌握插件使用技巧,快速体验令人激动的自动化、智能化的插件协同工作?相信这是大家想要了解的。在搜集了一些开发者的使用反馈后,阿里巴巴Java开发手册P3C项目IDE插件主要开发者骏烈针对需求,整理了一份详细的插件使用指南,帮助大家更好地使用插件。


阿里巴巴Java开发手册IDEA插件使用指南


通过Jetbrains官方仓库安装


1.打开 Settings >> Plugins >> Browse repositories...


5d05af7b70ea71a4be4e9893f882782b63d82135



2. 在搜索框输入alibaba即可看到Alibaba Java Code Guidelines插件,点击Install进行安装,然后重启IDE生效 


注意:因为插件zip包托管在Jetbrains官方CDN上,所以是从国外的服务器进行下载,可能会出现超时的情况。


0c8ebab28fce44b7c180cdbfb056f1819ace2533


通过下载安装包进行安装


1. 打开插件页面


c4d5910384e58abfc370894b9df78952e1c3fdde


2. Settings >> Plugins >> Install plugin from disk...,选择刚刚下载的zip包安装,然后重启IDE。


6fece3a7f3f2ca2890cf7fa2e0011a9a45f3f357



注意


最低支持IDEA版本为14.1(buildNumber 141.0,可以在About Intellij IDEA中查看版本信息),使用IDEA14的同学最好升级到14.1.7


插件基于JDK1.7打包,所以IDEA启动时使用的JDK版本如果是1.6的话就会报Unsupported major.minor version 51.0异常,建议大家都升级一下。


中文乱码解决方法


1.修改字体——Appearance&Behavior -> Appearance -> UI Options -> Name 里面设置成微软雅黑(microsoft yahei light)


e3f96a03a002ae0b7fbf75af6a2a2dd98f081b61


2.Switch Language to English and restart.


57099e196f6a84196558bc618f751a4706ab9412



插件使用


目前插件实现了集团编码规约中的41条规则,大部分基于PMD实现,其中有4条规则基于IDEA实现,并且基于IDEA Inspection实现了实时检测功能。部分规则实现了Quick Fix功能,对于可以提供Quick Fix但没有提供的,我们会尽快实现,也欢迎有兴趣的同学加入进来一起努力。


目前插件检测有两种模式:实时检测、手动触发。


实时检测


实时检测功能会在开发过程中对当前文件进行检测,并以高亮的形式提示出来,同时也可以支持Quick Fix,该功能默认开启,可以通过配置关闭。


结果高亮提示


检测结果高亮提示,并且鼠标放上去会弹出提示信息。


9ea104528515b98f7da6d091f7daa74c24a364cf


66589ccfb400b705fc3e4e28542886dc6b05a745



Intention QuickFix功能


Alt+Enter键可呼出Intention菜单,不同的规则会提示不同信息的Quick Fix按钮


7be115b2338ec066608ff762fc4b2c377cada5f0


关闭实时检测


在某些情况下,我们不希望对代码提示违规信息,比如我们在阅读Github开源项目代码的时候,如果界面出现一堆红色、黄色的提示,此时心里肯定是飘过一万只草泥马。这个时候我们可以通过Inspection的设置关闭实时检测功能。


1.通过右键快速关闭(打开)所有规则的实时检测功能


64900aefe051a19a1997db8637e5900b02984a49


2.通过Settings >> Editor >> Inspections 进行手动设置


85a12f891dbd9dbd73731d3e8c596c07b4caf948


也可以关闭某条规则的实时检测功能或者修改提示级别。


代码扫描


可以通过右键菜单、Toolbar按钮、快捷键三种方式手动触发代码检测。同时结果面板中可以对部分实现了QuickFix功能的规则进行快速修复。


触发扫描


在当前编辑的文件中点击右键,可以在弹出的菜单中触发对该文件的检测。


d9f27f6d2d5e778f770b764b0d205980422263f2


在左侧的Project目录树种点击右键,可以触发对整个工程或者选择的某个目录、文件进行检测。


73a485d680e5e16ae52829d1622ada2d83174c0a


如果您打开了IDE的Toolbar,也可以通过Toolbar中的按钮来触发检测,目前Toolbar的按钮触发的检测范围与您IDE当时的焦点有关,如当前编辑的文件或者是Project目录树选中的项,是不是感觉与右键菜单的检测范围类似呢。


39fb30fa2bf2938721669049e00a20f2ae3f4623


使用快捷键(Ctrl+Shift+Alt+J)触发弹出窗口,选择检测范围;您也可自定义快捷键。


7003dbf943a91fee717664f1cdf704b8f567d619


20fa50f217ab3f943e813e2f1c808ac64aaa2a07


扫描结果


检测结果直接使用IDEA Run Inspection By Name功能的结果界面,插件的检测结果分级为Blocker、Critical、Major。默认按等级分组,方便统计每个级别错误的数量。


1e17c9d88262d7724b58c43909c3cd572dedb911


默认情况我们在结果面板需要双击具体违规项才能打开对应的源文件,开启Autoscroll To Source选项,单击面板中的文件名、或者是具体的违规项的时候IDEA会自动打开对应的源文件。


164d68e20a57df97fb87bb5c1d769b83bf074286


QuickFix


对于实现Quick Fix的规则,在结果面板中可以直接一键修复 

注意:IDEA14、15可以通过左下角的灯泡进行一键修复操作。


048144b0f85e8cadaa64b37daedeff99025f9d27


6c8c8253ac91e5bfb6f58f486ad136357f35ef23


阿里巴巴Java开发手册Eclipse插件使用指南


首先非常感谢大家对插件的支持与意见,Eclipse的功能相对来说比较简单,希望有更多的同学加入进来一起完善。


插件安装


环境:JDK1.8,Eclipse4+。有同学遇到过这样的情况,安装插件重启后,发现没有对应的菜单项,从日志上也看不到相关的异常信息,最后把JDK从1.6升级到1.8解决问题。


Help -> Install New Software...


0d85d12b87c966d4a580e44a0c20d585d6bd9287


输入Update Site地址:https://p3c.alibaba.com/plugin/eclipse/update 回车,然后勾选Ali-CodeAnalysis,再一直点Next Next...按提示走下去就好。 然后就是提示重启了,安装完毕。


b34e3a560cd9016eadbb52713b513b5ae6479356


注意:有同学反映插件扫描会触发JPA插件启动后台线程执行不明任务,如果不需要的话卸载掉JPA插件即可,目前尚未发现原因。


插件使用


目前插件实现了开发手册中的53条规则,大部分基于PMD实现,其中有4条规则基于Eclipse实现,支持4条规则的QuickFix功能。


* 所有的覆写方法,必须加@Override注解, 

* if/for/while/switch/do等保留字与左右括号之间都必须加空格,

* long或者Long初始赋值时,必须使用大写的L,不能是小写的l)

* Object的equals方法容易抛空指针异常,应使用常量或确定有值的对象来调用equals。

目前不支持代码实时检测,需要手动触发,希望更多的人加入进来一起把咱们的插件做得越来越来,尽量提升研发的使用体验。


代码扫描


可以通过右键菜单、Toolbar按钮两种方式手动触发代码检测。同时结果面板中可以对部分实现了QuickFix功能的规则进行快速修复。


触发扫描


在当前编辑的文件中点击右键,可以在弹出的菜单中触发对该文件的检测。


2644bcf2e88828ab4a51d980ecd71161cc308b91


在左侧的Project目录树种点击右键,可以触发对整个工程或者选择的某个目录、文件进行检测。


a0fe16b7b3ac32c68008db748be3c28d4469ce54


也可以通过Toolbar中的按钮来触发检测,目前Toolbar的按钮触发的检测范围与您IDE当时的焦点有关,如当前编辑的文件或者是Project目录树选中的项,是不是感觉与右键菜单的检测范围类似呢。


11325e937c2e8dc8f3d04c760d35f7a96f19da43


扫描结果


简洁的结果面板,按规则等级分类,等级->规则->文件->违规项。同时还提供一个查看规则详情的界面。


清除结果标记更方便,支持上面提到的4条规则QuickFix。


4358f66d3339d1c90b50def73baed75165591c81


查看所有规则


6d903ab7547e31b6cbc5a45d2378c3891b8f74d1


c3aa72b4ce70e52589c1c0516a579bcd7552a4ed


国际化

ae6cb3f11ad96a371bc233779f19a579eaf495d6dd3ad299bbcaf4bfdacd7a39e21ef198075a99dd





在使用插件过程中,有任何问题或建议,欢迎与代码规约作者孤尽联系,也欢迎加入P3C项目组,一起打造具有全球竞争力,效率/质量最优的一站式研发/运维/测试平台。邮件申请:guanbao.yanggb@taobao.com 


阿里巴巴P3C项目组:P3C是世界知名的反潜机,专门对付水下潜水艇,寓意是扫描出所有潜在的代码隐患。这个项目组是阿里巴巴开发爱好者自发组织形成的虚拟项目组,把《阿里巴巴Java开发手册》强制条目转化成自动化插件,并实现部分的自动编程。




相关文章
|
1月前
|
Java
轻松上手Java字节码编辑:IDEA插件VisualClassBytes全方位解析
本插件VisualClassBytes可修改class字节码,包括class信息、字段信息、内部类,常量池和方法等。
103 6
|
1月前
|
Java Android开发
Eclipse Java 构建路径
Eclipse Java 构建路径
37 3
|
3月前
|
Arthas Java 测试技术
Java字节码文件、组成,jclasslib插件、阿里arthas工具,Java注解
Java字节码文件、组成、详解、分析;常用工具,jclasslib插件、阿里arthas工具;如何定位线上问题;Java注解
Java字节码文件、组成,jclasslib插件、阿里arthas工具,Java注解
|
3月前
|
安全 Oracle Java
edge浏览器加载java插件
edge浏览器加载java插件
242 1
|
4月前
|
小程序 JavaScript Java
【资料】阿里Java开发手册
本文是关于分享阿里Java开发手册资源及促进编程规范学习的指南。作者以个人经历引入,讲述了公司领导通过细致讲解阿里Java开发手册,提升了团队对代码质量和编程规范的认识
1031 0
【资料】阿里Java开发手册
|
4月前
|
存储 Java 测试技术
阿里巴巴java开发手册
这篇文章是关于阿里巴巴Java开发手册的整理,内容包括编程规约、异常日志、单元测试、安全规约、MySQL数据库使用以及工程结构等方面的详细规范和建议,旨在帮助开发者编写更加规范、高效和安全的代码。
|
5月前
|
JSON Java Maven
几个适合Java开发者的免费IDEA插件
【7月更文挑战第15天】以下是适合Java开发者的免费IDEA插件: - **Test Data**: 生成用于单元测试的随机数据,支持多种格式如JSON、CSV等。 - **SonarLint**: 实时检测并修正代码质量问题,提供详细的风险分析。 - **Maven Helper**: 提供pom.xml文件的UI界面,便于管理Maven项目依赖。 - **RestFulTool**: 辅助RESTful服务开发与测试,尤其适合Spring MVC和Spring Boot项目。 - **EnvFile**: 在IDE内部设置运行配置的环境变量,支持YAML、JSON等格式。
122 2
|
4月前
|
Java 网络安全 开发工具
新手入门Java。如何下载Eclipse、写出最基本的“Hello word”以及如何连接github并且上传项目。
新手入门Java。如何下载Eclipse、写出最基本的“Hello word”以及如何连接github并且上传项目。
64 0
|
4月前
|
监控 Java
JAVA性能优化- IntelliJ插件:java内存分析工具(JProfiler)
JAVA性能优化- IntelliJ插件:java内存分析工具(JProfiler)
180 0
|
5月前
|
Cloud Native 关系型数据库 Java
云原生数据仓库使用问题之如何安装PL/Java插件
阿里云AnalyticDB提供了全面的数据导入、查询分析、数据管理、运维监控等功能,并通过扩展功能支持与AI平台集成、跨地域复制与联邦查询等高级应用场景,为企业构建实时、高效、可扩展的数据仓库解决方案。以下是对AnalyticDB产品使用合集的概述,包括数据导入、查询分析、数据管理、运维监控、扩展功能等方面。

推荐镜像

更多