IDE

IntelliJ vs Eclipse: Complete IDE Comparison

In this post, we feature the complete IDE Comparison on IntelliJ vs Eclipse. IntelliJ and Eclipse are the integrated development environment tools. IntelliJ Idea has an integrated development environment with different features for faster and efficient coding. Eclipse has a workspace and extensible framework for plugins to customize the development environment. In this tutorial, we see the features of the IDEs to compare them.

1. Overview

We look at the feature comparison of IntelliJ vs Eclipse IDEs in this article. Integrated development environment has an editor, compiler, interpreter, and debugger. They can be used from an user interface for developing software and running the code.

 

2. IntelliJ vs Eclipse

2.1 Prerequisites

Java 8 is required on the linux, windows or mac operating system. Eclipse Oxygen can be used for this example. IntelliJ Idea Ultimate 2019.1 is necessary on the operating system which you want to execute the code.

2.2 Download

You can download Java 8 from the Oracle web site . Eclipse Oxygen can be downloaded from the eclipse web site. IntelliJ Idea Ultimate 2019.1 is available at this link.

2.3 Setup

2.3.1 Java Setup

Java Environment

JAVA_HOME=”/jboss/jdk1.8.0_73″
export JAVA_HOME
PATH=$JAVA_HOME/bin:$PATH
export PATH

2.3.2 IntelliJ Setup

The intelliJ idea-2019.1.3.dmg can be downloaded as the macOS Disk Image file. You can mount the disk image file as a disk in the Mac. Ensure that you have copied the IntelliJ IDEA to the Applications folder

2.3.3 Eclipse Setup

The ‘eclipse-java-oxygen-2-macosx-cocoa-x86_64.tar’ can be downloaded. The tar file is opened by double click. The tar file is unzipped by using the archive utility. After the unzipping, you will find the eclipse icon in the folder. You can move the eclipse icon from the folder to applications by dragging the icon.

2.4 Launching IDE

2.4.1. IntelliJ

IntelliJ idea has functionality to improve efficiency and programmer’s productivity. The IDE has the features related to coding assistance and supplementary tools. Click on the IntelliJ Idea icon to launch the IDE. The welcome screen comes up as shown in the above.

IntelliJ vs Eclipse

The screen pops up where you need to create a new project. The screenshot is attached below:

IntelliJ vs Eclipse

You can create a new project and select the Java Project. It is shown below in the attached screen shot.

IntelliJ vs Eclipse

You can create a Java HelloWorld project. The selection can be done as shown in the picture below:

IntelliJ vs Eclipse

The project workspace screen comes up. The screen shot is as shown below:

IntelliJ vs Eclipse
Idea Project Screen

2.4.2 Eclipse

Eclipse has features related to language support, customization, and extension. You can click on the eclipse icon to launch eclipse. The eclipse screen pops up as shown in the screen shot below:

You can select the workspace from the screen which pops up. The attached image shows how it can be selected.

IntelliJ vs Eclipse

You can see the eclipse workbench on the screen. The attached screen shot shows the Eclipse project screen.

IntelliJ vs Eclipse
Eclipse Workbench

2.5 UI

2.5.1 IntelliJ

IntelliJ Idea has the user interface elements such as Main menu, toolbar, navigation bar, status bar, editor and tool windows. The tool windows are related to execution, debugging, searching and integration with source control systems. The screen shot below shows the elements of the Idea welcome screen.

IntelliJ vs Eclipse
Idea UI

2.5.2 Eclipse

Eclipse’s workbench has perspectives, views and editors. A project explorer view shows the current project folders and files. The screen shot below shows the Eclipse workbench with Java perspective.

IntelliJ vs Eclipse

2.6 Code Completion

2.6.1 IntelliJ

Code completion in IntelliJ is related to class name completion and name completion of methods, fields, and keywords. On IntelliJ, you can use the keys ⌃Space (Mac OS ) and ⇧⌃[SPACE] (Windows OS) for code completion. You can also select the Completion menu item and then the Basic from the main menu. The screenshot below shows the code completion in intellij.

IntelliJ vs Eclipse
IntelliJ Code Complete

2.6.2 Eclipse

Eclipse has support for code completion for source code related classes, methods and properties. On eclipse, you can use the command Ctrl+ Space (Mac OS and Windows OS) for code completion. The screen shot below shows how the code completion works in eclipse.

IntelliJ vs Eclipse

2.7 Navigation

2.7.1 IntelliJ

You can navigate the project folders using “Autoscroll to Source” and “autoscroll from Source”. The screenshot is attached below related to navigation.

IntelliJ vs Eclipse - Idea Project Folder
Idea Project Folder Navigation

You can select the symbol and use the command ⌘B (Mac OS ) and ⌃B (Windows OS) to navigate to the declaration. In the code, System declaration is selected for navigation. The screenshot below shows the System declaration.

IntelliJ vs Eclipse - Idea Declaration
Idea Declaration Navigation

You can use the keys ⌥⌘B (Mac OS ) and ⌥⌃B (Windows OS) to navigate to the method implementation. In the code, println method is selected for navigating to the implementation. The screen shot below shows the method println implementation

IntelliJ vs Eclipse - Idea implementation
Idea implementation navigation

2.7.2 Eclipse

You can navigate to the declaration or implementation by selecting navigate menu at the top in eclipse. The screenshot below shows the eclipse navigation.

IntelliJ vs Eclipse - Eclipse Navigation
Eclipse Navigation

2.8 Quick Actions

2.8.1 IntelliJ

You can create a list of Quick actions. The list has a group of commands. Each command is related to a key or mouse shortcut. You can create one or more quick lists. Commands are identified by numbers in sequence.

2.8.2 Eclipse

A list of shortcuts can be created in eclipse UI. The keys are associated with menus and menu items. Controls in a dialog or view or editor can be added to the list. The keys can be related to menu item actions and buttons.

2.9 Refactoring

2.9.1 IntelliJ

In IntelliJ Idea, you can pick an item for refactoring. ⌃T (Mac OS) and ⇧F6 (Windows OS) is the command for refactoring the source. The screen shot for Idea refactoring is shown below:

Idea Refactor

2.9.2 Eclipse

In eclipse, you can right click on the source element in the IDE and pick Refactor menu item. You can also use the key Shift + Alt + T (Mac OS ) and alt+shift+R (Windows OS).

Eclipse Refactor

2.10 Code Style and Formatting

2.10.1 IntelliJ

In Idea, you can format your code based on the required code styles. You can go to the Settings or Preferences to set the Editor Code Style. The screenshot below shows the Code style settings.

Idea Code Style Settings

To reformat code, you can use the key ⌥⇧⌘L (Mac OS) and Ctrl+Alt+L(Windows OS). You can right click on the source code and reformat the code using the menu item Reformat. The attached screenshot below shows the reformatting of the code.

Idea Reformat

2.10.1 Eclipse

You can format your code using the keys “Ctrl+Shift+F” (Mac and Windows OS). You can also format the source by navigating to the Source and Format document menu. The screenshot below shows the formatting of the code in the eclipse.

Eclipse Reformat

2.11 Version Control Basics

2.11.1 Intellij

You can enable the settings repository plugin from Settings or Preferences. The version control repository URL can be set by choosing the Tools and Settings Repository. The screenshot below shows the settings repository url window.

Idea VCS

2..11.2 Eclipse

You can install the repository plugin first from the menu Help and Install New Software. The repository link is set for git as the egit plugin link. The screenshot attached below shows how to install the repository plugin.

Eclipse VCS plugin

2.12 Make

2.12.1 IntelliJ

You can build the project in IntelliJ Idea using the keys ⇧⌘F9 (Mac OS) and ⌃F9 (Windows OS). You can also click on the menu Build and Build Project for building the project. The screenshot below shows the IntelliJ building of the project.

Idea Build

2.12.2 Eclipse

In eclipse, from the project menu you can build the project by selecting the menu Build Project. The project can be built automatically by selecting the Build Automatically. The screenshot attached below shows the building of the project

Eclipse Build

2.13 Execution

2.13.1 IntelliJ

In IntelliJ Idea, you can run the project by clicking on the menu Run and Run Main. You can choose the keys ⌃R (Mac OS) and ⇧F10 (Windows OS) to execute the project.

Idea Project Execution

2.13.2 Eclipse

In eclipse, You can execute the project by choosing the Run under Run menu. You can also use the keys Ctrl + F11 (Windows and Mac OS) to execute the project.

Eclipse Execution

2.14 Debugging

2.14.1 IntelliJ

In IntelliJ, you can set the debugger options choosing Settings and Preferences. Debugger will be in the build, execution and deployment section. Compiler can be set as Java Compiler for the java code. You can start the debugger by choosing the run and debug configuration. Debugger can be started by setting the break point.

Idea Debug breakpoint

Debugger can be started by selecting startDebugger menu item. You can also use the key ⌃D (Mac OS) and ⇧F9 (Windows OS) for starting the debugger

Idea Debug

2.14.2 Eclipse

In eclipse, you can set the break points in the source code. You can choose Toggle breakpoint in the menu to set the break point. The screen shot is attached below to show the breakpoint created.

Eclipse Toggle Breakpoint

You can choose Run and Debug to start the debugger. Debugger starts at the breakpoint. The attached screenshot shows the debugger start menu.

Eclipse Debugger

2.15 Integration with Build Tools

2.15.1 IntelliJ

Intellij can be integrated with build tools such as Maven and Gradle. A maven project can be created using the menu File, New and Project. Maven can be selected from the left navigation menu. After picking the project’s SDK and maven archtype, maven project can be configured. The screenshot attached below shows the creation of the maven project

Idea_Maven

You can set the GroupId, ArtifactId and Version of the Maven project using the wizard. The attached screenshot shows the setting of maven project attributes.

Idea Maven Group

You can set the project name and location in the wizard. The attached screenshot shows the wizard for project settings.

Idea Maven project Name

After updating, Groupid, artifactid and Version in the editor of eclipse, you need to choose Finish to create the maven project.

Created Maven Project

You can create a gradle project using the menu File, New and Project. Gradle can be selected from the left navigation menu.

Idea GradleProject

You can set the Gradle project name and location. The attached screenshot below shows the setting of the gradle project name.

Idea Project Name

The output screen after the idea project creation is shown below:

Idea Gradle project creation

2.15.2 Eclipse

In Eclipse, you can choose Configure and Convert to Maven Project by right clicking on the project name. The screenshot shows the maven project creation.

Eclipse Maven

You can create a gradle project by selecting Configure and add gradle nature by right clicking on the project. The screenshot below shows the Gradle project creation.

Eclipse Gradle

2.16 Advantages

2.16.1 Idea

Intellij Idea is a popular IDE with intelligent contextual capabilities. It has the project-specific syntax tree and uses indexing to analyse the project. Based on the current developer’s context, it can provide search and autocomplete features. Idea is a good IDE for beginners and small projects. It supports different version control systems in a single interface.

2.16.2 Eclipse

Eclipse has a good look and feel. It is a well-designed IDE with good fonts and icons. It has a project perspective with support for different project structure. It has a workspace where different projects can be managed. Eclipse has features to manage more than one projects in a window. Eclipse has an extensible framework for adding and creating plugins. Eclipse has support for more than 1276 plugins. For large and complex projects, Eclipse suits the requirements.

2.17 Disadvantages

2.17.1 Idea

Intellij Idea uses more memory than the normal IDEs. Building projects and using auto build takes longer as it requires more memory. The community edition is free and there is a cost associated with the Ultra edition. It has a poor UI look and feel and it is less responsive. Idea has only 700 plugins in the marketplace. It does not provide search capability in the output console

2.17.2 Eclipse

Eclipse has poor features in code completion area in spite of having more than one plugins.  It does not have good features related to code merging from local to source control. Eclipse does not have compare with clipboard feature. Go to symbol in the entire project is another missing feature.

3. Conclusion

Overall, if you are going for a large project, Eclipse might be the better choice based on the foot print comparison with Idea. If you are working on a smaller project, IntelliJ Idea is better and intelligent for beginners.

4. Download the Source Code

Download
You can download the full source code of this example here: IntelliJ vs Eclipse: Complete IDE Comparison

Related articles

Bhagvan Kommadi

Bhagvan Kommadi is the Founder of Architect Corner & has around 20 years’ experience in the industry, ranging from large scale enterprise development to helping incubate software product start-ups. He has done Masters in Industrial Systems Engineering at Georgia Institute of Technology (1997) and Bachelors in Aerospace Engineering from Indian Institute of Technology, Madras (1993). He is member of IFX forum,Oracle JCP and participant in Java Community Process. He founded Quantica Computacao, the first quantum computing startup in India. Markets and Markets have positioned Quantica Computacao in ‘Emerging Companies’ section of Quantum Computing quadrants. Bhagvan has engineered and developed simulators and tools in the area of quantum technology using IBM Q, Microsoft Q# and Google QScript. He has reviewed the Manning book titled : "Machine Learning with TensorFlow”. He is also the author of Packt Publishing book - "Hands-On Data Structures and Algorithms with Go".He is member of IFX forum,Oracle JCP and participant in Java Community Process. He is member of the MIT Technology Review Global Panel.
Subscribe
Notify of
guest

This site uses Akismet to reduce spam. Learn how your comment data is processed.

6 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
dany
dany
4 years ago

For me this article brings nothing in term of comparison. It says : look in this IDE you have this and in eclipse you have that(ok nice this can be done when going on both websites) And it conclude that one is better than the other without any real comparison. No memory graph that confirms what the conclusion says No refactoring result No code completion comparison. For me : I’m using it on a large project (6 million line of code) and I’m a lot more productive than I was on eclipse. In the company I work we are using… Read more »

Fran Serrano
Fran Serrano
3 years ago
Reply to  dany

IMHO, no point in this comparison. Eclipse is free. That’s nice. If you’ve worked for some time under both IDE’s, you’ll know IntelliJ is, by far, better than Eclipse (faster, more intelligent, less distracting UI, more straight to the point). For small and big projects. Of course, you pay, but it pays off in a really short time. I’m taking from the experience. Working under Eclipse for 2 years and since I tried Intellij, 9 years working with it. Now, the only competitor that is approaching really fast, is VS Code. Still not so much for Java, but also free… Read more »

Pyves
Pyves
4 years ago

Seems odd to compare the latest version of IntelliJ with a 2-year old version of Eclipse.

Mario Kušek
Mario Kušek
4 years ago

This is not fair comparison. You have compared Eclipse oxygen from 2017 with IntelliJ from 2019.

Steph88
Steph88
4 years ago

“(Eclipse) does not have good features related to code merging from local to source control” I don’t know for Eclipse Oxygen (2017 old while comparing to IntelliJ 2019 not so fair…), but since at least Eclipse 2018, this is the best to works with git index and allow to works directly inside index and stages exactly what you need. Any other IDE and even dedicated tools like sourcetree or gitkraken don’t do that (only stage chunk with adjacent lines modified handled as a single stageable stuff like “git add -p” command does), intellij has a non standard use of git… Read more »

Back to top button