前5个有用的隐藏Eclipse功能

Eclipse是野兽。 仅凭其力量才能超越其神秘感的设备。 有人将其称为连续体跨功能器 。 其他人则称它为透湿器 。 是的,它是如此之大,需要花费数年才能掌握。 然后,您的经理出现并告诉您:我们正在使用NetBeans。

开玩笑。 除了Adam Bien之外,没有人使用NetBeans。 因此,让我们看一下5个非常有用但隐藏的Eclipse功能。

1:我的最爱功能:最爱

每个人都使用带有静态方法的库。 从Java 5开始,我们可以静态导入它们,因此我们不再需要编写如下内容:

SomeVeryImportantUtility.split(string1, string2);

但是,谁将在每个引用它们的类中手动静态导入所有这些方法呢? 没有人。 因为您可以在首选项中定义您喜欢的类型和成员:

首选项>收藏夹

首选项>收藏夹

然后,只需开始输入并寻找自动完成功能即可:

自动补全

自动补全

自动完成还将生成必要的静态导入。 例如,在使用具有许多功能的DSL时非常有用。 显然,您将需要做出谨慎的决定,哪些是您最喜欢的库,哪些是您最喜欢的类型。 当您在jOOQ博客 (或其联合组织)上时,让我给您一个提示。 一直是org.jooq.impl.DSL最爱。

2:很棒的区块选择模式

我最近在这里写过博客 。 这太棒了,值得再提一次。

块选择

块选择

请注意突出显示的按钮,它是左侧的第六个按钮。 那就是很棒的“块选择模式”(在Windows上为Alt-Shift-A,或者按Ctrl + 3然后输入块选择)。 它使您可以在同一位置的每个选定行上写开头引号。 当您必须编辑大量几乎相同的行时,此功能非常有用。

3:EGit暂存视图

显然,并非每个EGit用户都知道此视图。 实际上,对我而言,此视图是我使用shell命令的最重要原因。 看看这个美女:

暂存视图

暂存视图

好吧,不是真的美。 让我想起了埃里克·伯克(Eric Burke)的漫画 。 但是,我们处于跨迁移者的领域,一旦将存储库与其来源同步,登台视图就会充满更改,等待更改被添加/提交/推送。 现在,我可以逐行进行决定,将哪些更改添加到索引中(请注意,我尚未添加main方法)。 这将导致进行暂存(已添加)的更改和未暂存(尚未添加)的更改。 像在EGit中一样,我现在可以一次完成直接提交,提交+推送,修改+提交,修改+提交+推送。 尝试在命令行上执行此操作。

现在,在第一次提交之后,我现在可以再次在另一个单独的提交中暂存/添加main方法。 我猜想,这可能在后台使用隐藏或其他某种本地缓存来实现。 我不在乎,这很漂亮!

我可能可以用这种美丽做更多的事情,但这会填满整本书(如果您正在阅读,我正在等一本书@niborst )

如果您听不懂以上任何有关Git的话题,请尝试使用本流行指南 ,或与我一起…

4:类型过滤器

是的,因为Eclipse开箱即用的自动完成功能是胡说八道 。 是的! 没有人真正想要在API上调用hashCode()wait()notifyAll() 。 曾经 实际上,如今,几乎没有人甚至希望在锁定对象上调用wait()notify() ,除非他们正在编写JDK的并发库。 但是幸运的是,其他人是免费这样做的,并且他们肯定是在使用vi或emacs或十六进制编辑器,因此他们不介意Object方法。

那么,为什么我的自动完成弹出窗口充满了这种废话呢? 让我们创建一个类...

有这么多选择吗?真?

有这么多选择吗? 真?

哇。 我以为我只有一种方法? 我不介意equals() ,尽管我实际上键入过几次equals()可以将其键入。 因此,让我们删除这些内容:

首选项>类型过滤器

首选项>类型过滤器

感谢Eclipse也提到awt。 我希望有一个选项可以完全从JDK和我们的集体记忆中删除awt。 但是至少,将awt添加到类型过滤器可以使您不必在导入java.util.List (99.9%)和java.awt.List (8.3%)之间进行选择。 舍入错误是由于您先前无意中选择了错误列表而导致的次数,并想知道为什么无法分配ArrayList 。 再次感谢,awt。 还要注意,我的变色龙Windows 8如何在截屏时更改了窗口颜色。 瓷砖,下一步是什么? 无论如何,回到Eclipse,让我们再次尝试自动完成…

只可以有一个人

只可以有一个人

更好? 更好!

现在…

5:格式化标签

在花了所有时间进行块选择之后,仔细格式化我们的SQL…bam附带了intern和/或styleguide-nazi,并将所有漂亮的源文件自动格式化为一个巨大的文件。 但不会持续太久。 使用易于键入的formatter标签保护您的代码:

首选项>格式选项>关/开标签

首选项>格式选项>关/开标签

记住要使用简洁的方式来保护您精心设计的SQL,因为您可能不得不输入这些标签一次或两次:

现在受保护

现在受保护

没有人再次触摸该代码。 除了忘记密码的实习生和/或拒绝应用您的格式设置的样式向导纳粹。 另一个是使用NetBeans的实习生。 开玩笑。 没有人使用NetBeans。

同样,这些标签可与难以自动格式化的DSL完美配合。

还有更多

Eclipes是一只很棒的野兽。 每年,新版本都包含我们Java开发人员免费获得的新功能! 您可以退还给Eclipse。 尽管我认为基金会(由IBM支持)可能不太依赖捐赠,但是最好的选择是报告错误和功能请求,请访问: https : //bugs.eclipse.org/bugs……或者,如果您很勇敢, 签署CLA并开始捐款 。

这款出色的开发人员设备始终有改进的余地,为我的下5个最佳清单添加了更多材料和候选人。

参考: JAVA,SQL和JOOQ博客上JCG合作伙伴 Lukas Eder的前5个有用的隐藏Eclipse功能 。

翻译自: https://www.javacodegeeks.com/2013/10/top-5-useful-hidden-eclipse-features.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/366813.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

linux如何解除密码,如何在Linux下解除PDF文件的密码?

【51CTO.com快译】今天,我碰巧与一位朋友共享一个受密码保护的PDF文件。我知道该PDF文件的密码,但不想透露。相反,我只想解除密码,将文件发送给朋友。于是我开始在网上找一些简单的方法,好解除PDF文件的密码保护。上网…

C#中结构体定义并转换字节数组

ref: https://www.cnblogs.com/dafanjoy/p/7818126.html C#中结构体定义并转换字节数组 最近的项目在做socket通信报文解析的时候,用到了结构体与字节数组的转换;由于客户端采用C开发,服务端采用C#开发,所以双方必须保证各自定义结…

解析robots.txt

案例: http://www.taobao.com/robots.txt 学习: User-agent: * 这里的*代表的所有的搜索引擎种类,*是一个通配符Disallow: /admin/ 这里定义是禁止爬寻admin目录下面的目录Disallow: /require/ 这里定义是禁止爬寻require目录下面的目录Disal…

2018移动端页面适配-自适应最新方案直接写px--------通过gulp工作流搭建一体化的移动端开发环境

1.开始 在flexible的GitHub上面写着 由于viewport单位得到众多浏览器的兼容,lib-flexible这个过渡方案已经可以放弃使用,不管是现在的版本还是以前的版本,都存有一定的问题。建议大家开始使用viewport来替代此方案。vw的兼容方案可以参阅《如…

jclouds的命令行界面

序幕 我使用和为jclouds贡献了一年多的时间。 到目前为止,我已经在很多领域广泛使用了它,尤其是在Fuse生态系统中 。 它的强大之处在于它缺少一件事,该工具可用于管理jclouds也提供访问权限的任何云提供商。 类似于EC2命令之类的工具&#xf…

中兴linux下载软件,国产操作系统中兴新支点使用WPS For Linux办公软件的体验报告...

以下将给你带来在国产操作系统中兴新支点操作系统下使用WPS For Linux办公软件的体验报告,WPS For Linux提供Deb、Rpm、Tar.xz、Snap软件包,你可以选择Tar.xz源码包编译安装,或在系统自带的软件中心下安装,也可以参考采用snap方式…

Java 教程(开发环境配置+基础语法)

Java 开发环境配置 在本章节中我们将为大家介绍如何搭建Java开发环境。 window系统安装java 下载JDK 首先我们需要下载java开发工具包JDK,下载地址:http://www.oracle.com/technetwork/java/javase/downloads/index.html,点击如下下载按钮&am…

数据采集工具Telegraf:简介及安装

接着上一篇博客:InfluxDB简介及安装,这篇博客介绍下Linux环境下Telegraf安装以及其功能特点。。。 官网地址:influxdata 官方文档:telegraf文档 环境:CentOS7.4 64位 Telegraf版本:0.11.1-1 一、Telegraf介…

初探小程序插件

插播公司招聘信息: https://cnodejs.org/topic/5a915706653c43b914684f90 小程序插件可以干嘛? 周二晚上(3.13)的一个小程序新功能发布了-【小程序插件】,一开始以为是小程序发布了类似npm的组件管理工具,…

流畅和稳定的API的Lambda

几周前,我写了关于Java 8 lambda的介绍 。 在本简介中,我解释了什么是lambda以及如何将它们与Java 8中也引入的新Stream API结合使用。 Stream API为集合提供了更实用的接口。 此接口在很大程度上取决于lambda。 但是,lambda不仅具有改进的收…

linux 内存使用原理,linux中内存使用原理

首先介绍一下linux中内存是如何使用的。当有应用需要读写磁盘数据时,由系统把相关数据从磁盘读取到内存,如果物理内存不够,则把内存中的部分数据导入到磁盘,从而把磁盘的部分空间当作虚拟内存来使用,也称为Swap。如果给…

Confluence 6 站点备份和恢复

Atlassian 推荐针对生产环境中安装使用的 Confluence 使用原始数据库工具备份策略。 在默认的情况下,Confluence 每天都会备份所有数据和附件到 XML 文件备份中。这些文件被称为 XML 站点备份,同时这些文件存储在 Confluence home 目录中的 backups 目录…

休眠事实:等于和HashCode

每个Java对象都继承了equals和hashCode方法,但它们仅对Value对象有用,对面向无状态行为的对象毫无用处。 尽管使用“ ”运算符比较引用很简单,但是对于对象相等而言,事情要复杂一些。 由于您负责告诉平等性对特定对象类型的含义…

从mysql向HBase+Phoenix迁移数据的心得总结

* 转载请注明出处 - yosql473 - 格物致知,经世致用 mysql -> HBase Phoenix 1.总体方案有哪些? 1)通过Sqoop直接从服务器(JDBC方式)抽取数据到HBase中 因为数据量非常大,因此优先考虑用Sqoop和MR抽取。 使用Sqoop抽取数据有一…

玩转异步 JS :async/await 简明教程(附视频下载)

课程介绍 在软件开发领域,简洁的代码 > 容易阅读的代码 > 容易维护的代码,而 ES2017 中的 async/await 特性能让我们编写出相比回调地狱和 Promise 链式调用更直观、更容易理解的代码,await 关键字接收一个 Promise,等待代码…

linux 无法找到函数定义,找到定义Linux函数的位置

使用手册页对于基本的C函数,该手册页应该工作。man 2 readman 3 printf第2节为系统调用(直接到内核),而第3是用于标准C库调用。您通常可以省略该部分,并且人将自己弄清楚您需要什么。请注意,您可能需要采取额外步骤在系统上获取与…

序列自动机—— [FJOI2016]所有公共子序列问题

序列自动机&#xff1a; 是一个处理子序列的自动机。就这样。 建造&#xff1a;&#xff08;By猫老师&#xff1a;immoralCO猫&#xff09; s[] next[][26] memset(next[n], -1, 26<<2); for(int i n; i; --i) {memcpy(next[i - 1], next[i], 26 << 2);next[i - 1…

1000种对Java的响应没有死

当一篇评论发表1000条评论时&#xff0c;值得考虑一下。 我上周的社论“ 如果Java即将死&#xff0c;它肯定看起来非常健康 ”在各个开发人员社区中都感到不安 。 在Reddit&#xff0c;Hacker News和Slashdot之间&#xff0c;它收到了1000多个评论。 奇怪的是&#xff0c;很少…

java导包

下载响应的zip文件&#xff0c;就可以导入了&#xff0c;导入src目录也是可以的。 转载于:https://www.cnblogs.com/liaoxiaolao/p/9902062.html

分享轮子-flutter下拉刷新上拉加载

flutter下拉上拉组件轮子 什么是flutter? 首先说下flutter,估计这个应该挺多人没听过flutter这个框架,它是一个google推出的跨平台的移动应用UI框架,和React Native是同样的目的,支持三大平台:Android,Ios,还有一个是google新出的系统,忘了叫什么...本人React Native也是用过…