Java程序员最喜欢的11款免费IDE编辑器

简介:

 Java 开发人员需要花费大量的时间埋头于 Java 代码中,使用各种不同的 IDE(Intergrated Development Environment)来开发 Java 代码,所以下面我将为大家介绍 11 个不同的 IDE,这些 IDE 提供了多种功能,如:构建 Java 应用、TestNG、调试、代码检查、代码帮助、JUNIT 测试、多元重构、可视化 GUI 构建器和代码编辑器、Java 和 Maven 构建工具、ant、数据建模和构建查询,等等。

  1. NetBeans

  NetBeans 是一款用 Java 编写的开源 IDE,是 IDR 解决方案最喜欢使用的 Java IDE 编辑器之一。

  NetBeans IDE 支持所有 Java 应用类型(Java SE、JavaFX、Java ME、网页、EJB 和移动 app)标准开箱即用式的开发。 NetBeans 模块化的设计意味着它可以由第三方创建提升功能的插件来扩展 NetBeans(比如说,NetBeans 的 PDF 插件就是一个很好的例子)。

  NetBeans IDE 既可用于 Java 开发,也支持其他语言,特别是 PHP、C/C ++,和 HTML5。

  NetBeans 功能是基于 Ant 的项目系统,支持 Maven、重构、版本控制(支持 CVS、Subversion、GIT、 Mercurial 和 ClearCase),并且是在由通用开发和发布协议(CDDL)v1.0 和 GNU 通用公共协议(GPL)v2 构成的双重协议下发布的。

  NetBeans 可跨平台运行在微软 Windows、Mac OS X、Linux、Solaris 和支持兼容 JVM 的其他平台上。

  官方网站:https://netbeans.org/

  2. Eclipse

  Eclipse 是一款主要用 Java 编写的免费 Java IDE。Eclipse 允许你创建各种跨平台的可用于手机、网络、桌面和企业领域的 Java 应用程序。

  它的主要功能包括 Windows 生成器、集成 Maven、Mylyn、XML 编辑器、Git 客户端、CVS 客户端、PyDev,并且 Eclipse 还有一个基本工作区,里面的可扩展插件系统,可满足你自定义 IDE 的需求。通过插件,你也可以用其他编程语言开发应用程序,语言包括C、C ++、JavaScript、Perl、PHP、Prolog、Python、R、Ruby(包括 Ruby on Rails 框架),等等。

  Eclipse 在 Eclipse 公共协议下可用,并且适用于 Windows、Mac OS X 和 Linux。

  官方网站:https://eclipse.org/

  3. IntelliJ IDEA Community Edition

  IntelliJ IDEA Community Edition(社区版)是一款免费的 Java IDE(集成开发环境),主要用于 Android 应用开发、Scala、Groovy、Java SE 和 Java 编程。它设计轻巧,并提供如 JUnit 测试、TestNG、调试、代码检查、代码完成、支持多元重构、Maven 构建工具、ant、可视化 GUI 构建器和 XML 和 Java 代码编辑器等有用的功能。

  当然有一些功能在社区版上是没有的,所以如果你需要更多功能的话,不妨买一个许可证来解锁所有功能。

  IntelliJ IDEA Community Edition(社区版)是在 Apache 2 协议下发布的。

  官方网站:https://www.jetbrains.com/idea/features/

  4. Android Studio

  谷歌的 Android Studio 主要设计用于在 Android 平台上的开发,并且还可以运行和编辑一些 Java 代码。

  起初 Android Studio 是 JetBrains 公司在 IntelliJ IDEA Community Edition(社区版)基础上创建的。同时它也基于了 Gradle 的编译系统、变量设置以及多个 APK 的生成系统,另外还支持可扩展的模板和多种设备类型。其丰富的布局编辑器还可以满足对不同主题的布局编辑,它提供的 Android Lint 工具可用来对 Android 项目源代码进行扫描和检查,发现潜在的问题。

  它还有 ProGuard 和 app-signing 功能,支持谷歌云平台和项目的内置功能,可以配置为使用 Java 开发工具包(JDK)6 或 JDK 7。

  Android Studio 可在 Apache 协议 2.0 下免费使用,也可以通过 Windows、Mac OS X 和 Linux 下载,它取代了 Eclipse 成为谷歌用于原生 Android 应用开发的主要 IDE。

  官方网站:http://developer.android.com/sdk/index.html

  5. Enide Studio 2014

  Enide Studio 2014 最初(版本 0.11 预览)是作为独立于所有操作系统的产品而发布的。但是通过后续的变化,它开发了支持 Node.js、JavaScript 和 Java 开发的工具套件,此工具套件可在 Eclipse 插件商店和主站中得到。

  Enide Studio 2014 的插件包括:

  ——Nodeclipse 0.17;

  ——Chrome 开发工具,AngularJS for Eclipse,TernIDE,Eclipse WTP WebResources,TCF Terminals,MarkDown (*.md) 编辑器;

  ——GitHub Flavored Markdown(GFM)查看器,不同主题,Nodeclipse 编辑框,RestClient 工具。

  ——StartExplorer,Git 插件,Maven,Gradle 集成,Minimalist Jade 编辑器,等等等等……

  官方网站:http://www.nodeclipse.org/enide/studio/2014/

  6. BlueJ

  BlueJ 是一款支持 Java 编程语言的集成开发环境(IDE)。它原本是为了教育目的而开发的,同时也适合于那些想做小型软件开发的开发人员。它的运行需要 JDK(Java 开发工具包)的帮助。

  BlueJ 主要是为面向对象的程序设计教学而开发的,因此它的设计不同于其他的开发环境。

  主画面用图形展现出当前正在开发的应用程序的类结构,以及可被交互创建和测试的对象。这种互动式的设置,再加上干净,简单的用户界面,可方便地实验正在开发的对象,让初学者更快地上手,而不至于手忙脚乱招架不住。

  新手用户可以在 BlueJ 上检查值并调用方法,作为参数等传递,并且 Java 表达式可以不编译就直接调用,BlueJ 绝对堪称是一款用于 Java 功能强大的图形化 shell/REPL。

  BlueJ 项目是一个免费和开放的源码软件,并基于 GNU 和 GPL 的开源协议。还有专为教学而设计的大学/大专 BlueJ 入门课程,是非常流行的教科书。它也可以在 Windows、Mac OS X、Linux 等运行 Java 的平台上运行。并且不需要U盘就可以安装使用。

  官方网站:http://www.bluej.org/

  7. jEdit

  jEdit 是一款凝聚了成百上千人开发经验(从开发插件那时算起)的文本编辑器。大多数人认为,jEdit 之所以能从功能和易用性方面打败许多昂贵的开发工具是因为,jEdit 的核心,配备了一个内置的宏语言:一个可扩展的插件架构。还有数百种宏和插件可供选择。

  此外,它还有自动缩进功能,支持超过 200 种语言的语法高亮,支持大量的字符编码,包括 UTF8 和 Unicode,支持折叠选择性隐藏的文本区域,自动换行,等等。

  它也可以用于源代码的编辑、搜索和替换,管理文件文件。由于 jEdit 是用 Java 编写的,所以它能在 Mac OS X、OS/2、Unix、VMS 和 Windows 平台上面运行。并且它是在 GPL 2.0 协议下作为一款免费软件发布的。

  官方网站:http://www.jedit.org/

  8. jGRASP

  jGRASP 是运行在 Java 平台上的一个轻量级 IDE,它提供可视化自动生成,目的在于提高软件的可理解性。它能够在运行时产生静态可视化的源代码结构和直观化的数据结构,并且 jGRASP 能产生支持 Java、C、C ++、Objective-C、Python、Ada 和 VHDL 的控制结构图(CSDs);支持 Java 和 Ada 的复杂文件图表(CPGs);支持 Java 的 UML 类图;还有动态对象查看器和结合了集成调试器和 Java 工作台的画布查看器。

  查看器的内置功能,可以让它识别数据结构,通过对象标识符认出传统的数据结构,如栈、队列、链表、二进制树、哈希表。

  jGRASP 能在任何可以运行 Java 虚拟机(Java 版本 1.5 或更高版本)的平台上运行。目前 jGRASP 网站提供用于 Windows、Mac OS 的下载,还有适用于 Linux 和其他系统的通用压缩文件。

  官方网站:http://www.jgrasp.org/

  9. JSource

  JSource 是一款免费的 Java IDE,是 Java 开发人员和程序员一个非常不错的选择。

  它在创建跨平台的 Java 应用程序时非常有用,并且非常之轻巧。您可以使用 JSource 运行、编译、编辑和创建 Java 文件。其主要特点是支持多种语言的语法高亮显示和 Java Swing 组件。在 JSource 的 2.0 版本中,你可以使用 jEdit 语法包,也有一些可用于快速开发的开源 Java 工具。这些工具已通过修改,能与核心 JSource 结构融洽得非常好。

  JSource 是基于 GNU 通用公共许可证 2.0 版(GPLv2)下的。

  官方网站:http://sourceforge.net/projects/jsource/

  10. JDeveloper

  JDeveloper 是由 Oracle 公司提供的,并作为免费软件发布的一款 IDE。它可为我们提供各种在 Java、XML、SQL 和 PL/SQL、HTML、JavaScript、BPEL 和 PHP 开发中所需的功能。JDeveloper 可用于编码、调试、优化和分析部署。 JDeveloper 集成了 Oracle 应用开发框架(Oracle ADF)——一个从终端到终端基于 Java EE 的框架,可进一步简化应用程序的开发。

  JDeveloper 中有 3 种版本,即 Java 版本,J2EE 版本和 Studio 版本。

  Java 版的条款基于 Java SE 6 的支持,功能包括代码编辑器、代码导航、重构、兼容 Swing、单元测试、版本控制、审计和指标、调试、分析、Ant 支持,Maven 支持,XML 支持以及开放式 API 和扩展。

  此 IDE 平台还可作为另一款 Oracle 产品,SQL Developer 的基础。

  官方网站:http://www.oracle.com/technetwork/developer-tools/jdev/overview/index-094652.html

  11. DrJava

  DrJava 是一款极端轻巧的开发环境,可用于编写 Java 程序。它主要是为学生而设计的,提供了一个直观的界面,并允许交互评估 Java 代码。

  它的主要功能是可作为单元测试工具、源级调试器、评估程序文本的互动窗口,智能程序编辑器,等等。它是基于 BSD 协议的免费软件。

  官方网站:http://www.drjava.org/

  最后希望你能找到最适合你的 IDE。对了,你用的是哪款 IDE 呢,不妨一起来说一说吧!

  ——




本文转自数据之巅博客园博客,原文链接:http://www.cnblogs.com/asxinyu/articles/4380839.html,如需转载请自行联系原作者

相关文章
|
4月前
|
人工智能 Kubernetes Java
回归开源,两位 Java 和 Go 程序员分享的开源贡献指引
Higress是一个基于Istio和Envoy的云原生API网关,支持AI功能扩展。它通过Go/Rust/JS编写的Wasm插件提供可扩展架构,并包含Node和Java的console模块。Higress起源于阿里巴巴,解决了Tengine配置重载及gRPC/Dubbo负载均衡问题,现已成为阿里云API网关的基础。本文介绍Higress的基本架构、功能(如AI网关、API管理、Ingress流量网关等)、部署方式以及如何参与开源贡献。此外,还提供了有效的开源贡献指南和社区交流信息。
523 33
|
4月前
|
Java 程序员 应用服务中间件
【高薪程序员必看】万字长文拆解Java并发编程!(2 2-2)
📌 核心痛点暴击:1️⃣ 面了8家都被问synchronized锁升级?一张图看懂偏向锁→重量级锁全过程!2️⃣ 线程池参数不会配?高并发场景下这些参数调优救了项目组命!3️⃣ volatile双重检测单例模式到底安不安全?99%人踩过的内存可见性大坑!💡 独家亮点抢先看:✅ 图解JVM内存模型(JMM)三大特性,看完再也不怕指令重排序✅ 手撕ReentrantLock源码,AQS队列同步器实现原理大揭秘✅ 全网最细线程状态转换图(附6种状态转换触发条件表)
94 0
|
4月前
|
存储 缓存 Java
【高薪程序员必看】万字长文拆解Java并发编程!(5):深入理解JMM:Java内存模型的三大特性与volatile底层原理
JMM,Java Memory Model,Java内存模型,定义了主内存,工作内存,确保Java在不同平台上的正确运行主内存Main Memory:所有线程共享的内存区域,所有的变量都存储在主存中工作内存Working Memory:每个线程拥有自己的工作内存,用于保存变量的副本.线程执行过程中先将主内存中的变量读到工作内存中,对变量进行操作之后再将变量写入主内存,jvm概念说明主内存所有线程共享的内存区域,存储原始变量(堆内存中的对象实例和静态变量)工作内存。
161 0
|
4月前
|
网络协议 Java 大数据
【高薪程序员必看】万字长文拆解Java并发编程!(1)
📌 核心痛点暴击:1️⃣ 面了8家都被问synchronized锁升级?一张图看懂偏向锁→重量级锁全过程!2️⃣ 线程池参数不会配?高并发场景下这些参数调优救了项目组命!3️⃣ volatile双重检测单例模式到底安不安全?99%人踩过的内存可见性大坑!💡 独家亮点抢先看:✅ 图解JVM内存模型(JMM)三大特性,看完再也不怕指令重排序✅ 手撕ReentrantLock源码,AQS队列同步器实现原理大揭秘✅ 全网最细线程状态转换图(附6种状态转换触发条件表)
105 0
|
4月前
|
安全 Java 程序员
【高薪程序员必看】万字长文拆解Java并发编程!(2 2-1)
🔥【高薪程序员必看】万字长文拆解Java并发编程!面试官看了直呼内行,90%人不知道的线程安全骚操作!💻🚀《16个高频面试灵魂拷问+底层源码暴击》🔥👉戳这里看如何用1个月经验吊打3年程序员!📌 核心痛点暴击:1️⃣ 面了8家都被问synchronized锁升级?一张图看懂偏向锁→重量级锁全过程!2️⃣ 线程池参数不会配?高并发场景下这些参数调优救了项目组命!3️⃣ volatile双重检测单例模式到底安不安全?99%人踩过的内存可见性大坑!
97 0
|
4月前
|
缓存 安全 Java
【高薪程序员必看】万字长文拆解Java并发编程!(3-1):并发共享问题的解决与分析
活锁:多个线程相互影响对方退出同步代码块的条件而导致线程一直运行的情况。例如,线程1的退出条件是count=5,而线程2和线程3在其代码块中不断地是count进行自增自减的操作,导致线程1永远运行。内存一致性问题:由于JIT即时编译器对缓存的优化和指令重排等造成的内存可见性和有序性问题,可以通过synchronized,volatile,并发集合类等机制来解决。这里的线程安全是指,多个线程调用它们同一个实例的方法时,是线程安全的,但仅仅能保证当前调用的方法是线程安全的,不同方法之间是线程不安全的。
89 0
|
4月前
|
Java 程序员
【高薪程序员必看】万字长文拆解Java并发编程!(3-2):并发共享问题的解决与分析
wait方法和notify方法都是Object类的方法:让当前获取锁的线程进入waiting状态,并进入waitlist队列:让当前获取锁的线程进入waiting状态,并进入waitlist队列,等待n秒后自动唤醒:在waitlist队列中挑一个线程唤醒:唤醒所有在waitlist队列中的线程它们都是之间协作的手段,只有拥有对象锁的线程才能调用这些方法,否则会出现IllegalMonitorStateException异常park方法和unpark方法是LockSupport类中的方法。
92 0
|
4月前
|
存储 安全 Java
【高薪程序员必看】万字长文拆解Java并发编程!(4-1):悲观锁底层原理与性能优化实战
目录4. JVM字节码文件4.1. 字节码文件-组成4.1.1. 组成-基础信息4.1.1.1. 基础信息-魔数4.1.1.2. 基础信息-主副版本号4.1.2. 组成-常量池4.1.3. 组成-方法4.1.3.1. 方法-工作流程4.1.4. 组成-字段4.1.5. 组成-属性4.2. 字节码文件-查看工具4.2.1. javap4.2.2. jclasslib4.2.3. 阿里Arthas
74 0
|
4月前
|
安全 Java 程序员
【高薪程序员必看】万字长文拆解Java并发编程!(6-2):从CAS无锁机制到Atomic原子类实战指南
🌟 ​🌟今天给大家带来的是 ​💻⚡在这篇文章中,我们将一起探索:🔹 ​的底层原理,它是如何通过 ​实现无锁并发的?🔹 ​的终极对决,为什么高并发场景下CAS性能更优?🔹 ​的陷阱与解决方案——和实战演示!🔹 ​​(LongAdder等)的使用场景与性能对比🔹 危险的 ​黑魔法:为什么阿里禁止使用却又是并发库的基石?无论你是:✅ ​​(BATJ高频考点)✅ ​​(如何设计百万级计数器)✅ ​​(从Java代码到CPU指令的全链路分析)这篇文章都会让你收获满满!✨。
65 0
|
4月前
|
安全 Java 程序员
【高薪程序员必看】万字长文拆解Java并发编程!(6-1):从CAS无锁机制到Atomic原子类实战指南
🌟 ​🌟今天给大家带来的是 ​💻⚡在这篇文章中,我们将一起探索:🔹 ​的底层原理,它是如何通过 ​实现无锁并发的?🔹 ​的终极对决,为什么高并发场景下CAS性能更优?🔹 ​的陷阱与解决方案——和实战演示!🔹 ​​(LongAdder等)的使用场景与性能对比🔹 危险的 ​黑魔法:为什么阿里禁止使用却又是并发库的基石?无论你是:✅ ​​(BATJ高频考点)✅ ​​(如何设计百万级计数器)✅ ​​(从Java代码到CPU指令的全链路分析)这篇文章都会让你收获满满!✨。
68 0