玩转Eclipse — 自动代码规范化

2024-05-27 07:18

本文主要是介绍玩转Eclipse — 自动代码规范化,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

http://www.firedragonpzy.com.cn/index.php/archives/4885?utm_source=tuicool&utm_medium=referral

大项目往往是有很多人一起完成的,然而每个人都有自己的style,导致整个项目的代码不仅存在不符合语言规范的情况,而且读起来非常困难。因此,这样的项目中都会引入Checkstyle,来规范大家的编码风格,尽量做到统一和合理。我们在代码写完之后,还要花时间去手动解决Checkstyle提示的问题,这是一个非常无聊和耗时的工作。下面介绍如何利用Eclipse配置,在我们写完代码并保存之后,Eclipse就会自动帮我们解决Checkstyle问题。

1. Formatter设置

Eclipse工具栏上选择Window -> Preferences -> Java -> Code Style -> Formatter,进入如下界面:

Active profile中显示的是当前正在使用的代码自动格式化配置。点击“Export All…”按钮可以导出Eclipse中的代码自动格式化配置,点击“Import…”按钮可以导入本地已有的配置文件,导入和导出的文件都是xml格式。可以点击“New…”按钮,在Eclipse中的一个已有配置基础上,新建一个自己的配置。

下面重点介绍如何进行代码自动格式化配置。点击“Edit…”按钮,进入如下Formatter配置界面:

上面红色框标记的选项卡中,是所有可以配置的选项。下面对每个选项卡大致可以设置的内容进行简单介绍:

 

  • Indentation缩进

 

Tab policy指定是否可以使用Tab键,有Spaces only(只支持空格键),Tabs only(只支持Tab键)和Mixed(同时支持空格键和Tab键)。为了保证代码在不同IDE和运行环境的兼容性和一致性,强烈建议选择Spaces only。Indentation size指定每次缩进多少个空格,Tab size指定一个Tab键相当于多少个空格。在Spaces only情况下,按Tab键,会自动转化成对应数量的空格。

Align fields in columns指定属性是否按列对齐。

Indent框中指定Java Code中常见元素是否缩进。

 

  • Braces大括号

 

Braces positions指定Java Code中一些元素的大括号的位置,大概有Same line(同行),Next line(下行),Next line indented(下行缩进)等选择。

 

  • White Space空格

 

控制在Declarations、Control statements、Expressions、Arrays和Parameterized types这几类元素中的相应位置插入空格。

 

  • Blank Lines空行

 

控制class文件中元素之间空行的数量,基本上采用默认值。

 

  • New Lines新行

 

控制class文件中元素是否插入新的一行。

 

  • Control Statements控制语句

 

控制像if和else,do和while,以及try、catch和finally成套的控制关键字的位置。

 

  • Line Wrapping换行

 

Maximum line width控制每行的最大字符数。

Default indentation for wrapped lines指定换行时缩进多少个空格。

还可以详细控制class各元素是否换行。

 

  • Comments注释

 

对各种注释(包括文件头注释,行注释,块注释,Javadoc注释)进行格式设置。

2. Save Actions设置

进行Formatter设置后,你就可以使用Ctrl + Shift + F或者Source -> Format格式化选择的代码。其实,还有一种更好的方法,在每次写完代码并保存class文件的时候,自动格式化该文件的代码。选择Window -> Preferences -> Java -> Editor -> Save Actions进入如下界面:

选择“Perform the selected actions on save”以及下面的三个复选框,其中“Format source code”就是根据前面设置的Formatter对Save文件中的代码进行自动格式化,可以选择仅针对修改过的代码还是针对所有代码。“Additional actions”是添加一些Save时的额外操作,可以点击“Configure…”按钮对额外操作进行设置,设置界面如下:

 

  • Code Organizing代码组织

 

可以设置删除末尾的空格,正确的缩进,以及对成员进行排序。

 

  • Code Style代码风格

 

可以设置控制语句和表达式,最重要的是还可以设置所有的parameter为final。

 

  • Member Access成员访问

 

设置是否需要this来访问非static的属性和方法,同时也可以设置static的属性和方法。

 

  • Missing Code遗漏代码

 

设置是否是否补齐遗漏的“@Override”和“@Deprecated”。

 

  • Unnecessary Code不必要代码

 

删除不必要的代码,例如:没用的import,没用的private成员,没用的local变量等。


这篇关于玩转Eclipse — 自动代码规范化的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1006804

相关文章

活用c4d官方开发文档查询代码

当你问AI助手比如豆包,如何用python禁止掉xpresso标签时候,它会提示到 这时候要用到两个东西。https://developers.maxon.net/论坛搜索和开发文档 比如这里我就在官方找到正确的id描述 然后我就把参数标签换过来

poj 1258 Agri-Net(最小生成树模板代码)

感觉用这题来当模板更适合。 题意就是给你邻接矩阵求最小生成树啦。~ prim代码:效率很高。172k...0ms。 #include<stdio.h>#include<algorithm>using namespace std;const int MaxN = 101;const int INF = 0x3f3f3f3f;int g[MaxN][MaxN];int n

计算机毕业设计 大学志愿填报系统 Java+SpringBoot+Vue 前后端分离 文档报告 代码讲解 安装调试

🍊作者:计算机编程-吉哥 🍊简介:专业从事JavaWeb程序开发,微信小程序开发,定制化项目、 源码、代码讲解、文档撰写、ppt制作。做自己喜欢的事,生活就是快乐的。 🍊心愿:点赞 👍 收藏 ⭐评论 📝 🍅 文末获取源码联系 👇🏻 精彩专栏推荐订阅 👇🏻 不然下次找不到哟~Java毕业设计项目~热门选题推荐《1000套》 目录 1.技术选型 2.开发工具 3.功能

代码随想录冲冲冲 Day39 动态规划Part7

198. 打家劫舍 dp数组的意义是在第i位的时候偷的最大钱数是多少 如果nums的size为0 总价值当然就是0 如果nums的size为1 总价值是nums[0] 遍历顺序就是从小到大遍历 之后是递推公式 对于dp[i]的最大价值来说有两种可能 1.偷第i个 那么最大价值就是dp[i-2]+nums[i] 2.不偷第i个 那么价值就是dp[i-1] 之后取这两个的最大值就是d

pip-tools:打造可重复、可控的 Python 开发环境,解决依赖关系,让代码更稳定

在 Python 开发中,管理依赖关系是一项繁琐且容易出错的任务。手动更新依赖版本、处理冲突、确保一致性等等,都可能让开发者感到头疼。而 pip-tools 为开发者提供了一套稳定可靠的解决方案。 什么是 pip-tools? pip-tools 是一组命令行工具,旨在简化 Python 依赖关系的管理,确保项目环境的稳定性和可重复性。它主要包含两个核心工具:pip-compile 和 pip

基于51单片机的自动转向修复系统的设计与实现

文章目录 前言资料获取设计介绍功能介绍设计清单具体实现截图参考文献设计获取 前言 💗博主介绍:✌全网粉丝10W+,CSDN特邀作者、博客专家、CSDN新星计划导师,一名热衷于单片机技术探索与分享的博主、专注于 精通51/STM32/MSP430/AVR等单片机设计 主要对象是咱们电子相关专业的大学生,希望您们都共创辉煌!✌💗 👇🏻 精彩专栏 推荐订阅👇🏻 单片机

D4代码AC集

贪心问题解决的步骤: (局部贪心能导致全局贪心)    1.确定贪心策略    2.验证贪心策略是否正确 排队接水 #include<bits/stdc++.h>using namespace std;int main(){int w,n,a[32000];cin>>w>>n;for(int i=1;i<=n;i++){cin>>a[i];}sort(a+1,a+n+1);int i=1

Python3 BeautifulSoup爬虫 POJ自动提交

POJ 提交代码采用Base64加密方式 import http.cookiejarimport loggingimport urllib.parseimport urllib.requestimport base64from bs4 import BeautifulSoupfrom submitcode import SubmitCodeclass SubmitPoj():de

html css jquery选项卡 代码练习小项目

在学习 html 和 css jquery 结合使用的时候 做好是能尝试做一些简单的小功能,来提高自己的 逻辑能力,熟悉代码的编写语法 下面分享一段代码 使用html css jquery选项卡 代码练习 <div class="box"><dl class="tab"><dd class="active">手机</dd><dd>家电</dd><dd>服装</dd><dd>数码</dd><dd

生信代码入门:从零开始掌握生物信息学编程技能

少走弯路,高效分析;了解生信云,访问 【生信圆桌x生信专用云服务器】 : www.tebteb.cc 介绍 生物信息学是一个高度跨学科的领域,结合了生物学、计算机科学和统计学。随着高通量测序技术的发展,海量的生物数据需要通过编程来进行处理和分析。因此,掌握生信编程技能,成为每一个生物信息学研究者的必备能力。 生信代码入门,旨在帮助初学者从零开始学习生物信息学中的编程基础。通过学习常用