每个Java程序员都需要一个编程编辑器或IDE来帮助编写Java和使用类库和框架。哪个编辑器或IDE最适合你取决于几个因素:开发项目的性质、你在组织中的角色、你的编程技能水平、开发团队使用的过程、团队是否在工具上实现了标准化,当然还有你的个人偏好。
IntelliJ IDEA
IntelliJ IDEA是在特性和价格方面首屈一指的Java IDE,它有两个版本:免费社区版和付费商业终极版。主要的区别在于终极版支持Perforce、ClearCase和TFS,以及Git、SVN、Mercurial和CVS支持JavaScript和TypeScript支持Jakarta EE、Spring、GWT、Vaadin、Play、Grails等框架;并包括数据库工具和SQL。Ultimate edition的最新增强包括HTTP客户端、分析工具、远程开发和协作开发。
IntelliJ 吹捧 IDEA 可以深入了解你的代码、开发人员人体工程学、内置开发人员工具和多语言体验。
IntelliJ IDEA 支持所有主要的 JVM 应用服务器,并且可以在服务器上进行部署和调试,解决了企业 Java 开发人员的主要痛点。IDEA 通过添加 Docker 工具窗口的插件支持 Docker。说到插件,IntelliJ 有很多。
Eclipse
Eclipse是长期以来最流行的Java IDE,它是免费和开源的,大部分是用Java编写的,尽管它的插件架构允许用其他语言扩展Eclipse。Eclipse用一个可移植的、基于Java的ide取代了基于Smalltalk的IBM Visual Age IDEs。另一个目标是超越微软的Visual Studio,这个项目也因此得名。
Java的可移植性有助于Eclipse的跨平台性:Eclipse可以在Linux、macOS、Solaris和Windows上运行。无论好坏,Java标准小部件工具包(SWT)至少对Eclipse的外观和感觉负有部分责任,JVM对其性能负有部分责任——或者有人说,缺乏性能。Eclipse运行缓慢的名声可以追溯到更老的硬件和JVM。然而,当它在后台自我更新时,特别是当你安装了许多插件时,它仍然会感觉很慢。
Eclipse支持本地和远程调试,假设你使用的是支持远程调试的Java虚拟机。调试是相当标准的:通常设置断点,然后在调试透视图的选项卡中查看变量。当然,你可以单步执行代码并计算表达式。
NetBeans
当前版本Apache NetBeans 13是为Windows、macOS和Linux预编译的,并且有一个可移植的子集可以在其他支持Java的系统上运行。
NetBeans的插件比Eclipse少,但是它们不太可能互相干扰。NetBeans 13可以根据你的需要自动添加功能。需要JDK 11 ,官方支持在JDK 11和JDK 17上运行。
NetBeans 13包括Java SE JDK 14作为其默认的代码平台。可以根据需要安装额外的Java平台,包括Java Standard Edition 8和OpenJDK直到版本18。
NetBeans对Maven、Ant和Gradle有很好的内置支持。它还为Maven依赖关系提供了一个有趣(且有用)的图形视图。
NetBeans Java调试器很好,尽管很传统。一个单独的可视化调试器允许你拍摄GUI快照,并可视化地浏览JavaFX和Swing应用程序的GUI。NetBeans profiler非常适合于了解CPU和内存的使用情况,并且有很好的工具来查找内存泄漏。
总结
虽然人们经常选择个人的Java IDE并将其用于所有的项目,但有时在选择IDE时会有基于项目的考虑。简单的答案是与团队的其他成员使用相同的IDE,但这并不是完全必要的。