meta data for this page
  •  

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
sap_hybris_commerce:development_process:intellij_idea_vs._eclipse_ide_in_sap_hybris_projects [2019/08/26 15:27] – [Intellij IDEA vs. Eclipse IDE in SAP Hybris Projects] Antonio Robirosasap_hybris_commerce:development_process:intellij_idea_vs._eclipse_ide_in_sap_hybris_projects [2022/10/23 10:05] (current) – [Intellij IDEA vs. Eclipse IDE in SAP Hybris Projects] Antonio Robirosa
Line 3: Line 3:
 Since I started working on SAP Hybris projects in October 2010, I used Eclipse IDE. This is the IDE recommended by Hybris and it was the only one which I had used on Java projects until that point in my career. On March 2014 I joined a Hybris project where each developer used its own favorite IDE: while the majority used Eclipse, our Continuous Integration experts used Intellij IDEA and two senior developers used Netbeans. Crashes and refresh issues have always upset me about Eclipse. So after listening to the advantages of the other IDEs, I decided to give Intellij IDEA a try because its supporters were more convincing. Although the use of an IDEA is a matter of taste, I hope you find useful to read about my experience. Since I started working on SAP Hybris projects in October 2010, I used Eclipse IDE. This is the IDE recommended by Hybris and it was the only one which I had used on Java projects until that point in my career. On March 2014 I joined a Hybris project where each developer used its own favorite IDE: while the majority used Eclipse, our Continuous Integration experts used Intellij IDEA and two senior developers used Netbeans. Crashes and refresh issues have always upset me about Eclipse. So after listening to the advantages of the other IDEs, I decided to give Intellij IDEA a try because its supporters were more convincing. Although the use of an IDEA is a matter of taste, I hope you find useful to read about my experience.
  
-Now I am using Intellij IDEA 15 Ultimate Edition at work since July 2014. Although I have to **pay two licenses** for the [[https://www.jetbrains.com/idea/buy/#commercial?billing=yearly|Intellij IDEA Ultimate]] and the [[https://plugins.jetbrains.com/plugin/7525-hybris-integration/pricing|Hybris Integration Plugin]], the use of this IDEA acelerates my work and saves my time and saves my customers money.+Now I am using Intellij IDEA 15 Ultimate Edition at work since July 2014. Although I have to **pay one license** for the [[https://www.jetbrains.com/idea/buy/#commercial?billing=yearly|Intellij IDEA Ultimate]] the use of this IDEA accelerates my work and saves my time and saves my customers money. 
  
-===== Positive Points about Intellij IDEA ====== +I am also using the [[https://plugins.jetbrains.com/plugin/12867-sap-commerce-developers-toolset|SAP Commerce Developers Toolset Plugin]].
- +
-==== Java Projects ===== +
- +
-  * **There aren't any refresh problems**. After an "ant clean all" you have to wait 10-15 seconds until Intellij reindexes all the files and they you can work normally. This IDE also seems to react faster: There are times when Eclipse just hangs and you don't know what it is doing. +
-  * Refactorings are faster than in Eclipse. Additionally the IDE doesn't crash during the process and Intellij seems to spot required changes in Spring application which Eclipse seem to miss (Ultimate Edition of Intellij IDEA). +
-  * Searching classes and files is faster because the name matching algorithm doesn't require the use of asterisks and it matches the given characters in every part of the name. +
-  * Windows arrangementAlthough Eclipse has a more powerful windows management framework, I found the right window faster in IntellijWhen I follow the call hierarchy of a method, I have ten windows open and not tons of them as in Eclipse. +
-  * You can mark the folders which contain source code from tests. Then the search can classify the results in Production and Testing. +
- +
-==== SAP Hybris Projects ===== +
- +
-  * The analysis of Findbugs, PMD and Checkstyle using the QA plugin runs faster than in Eclipse and I can easily configure what issues I would like to analyse. +
-  * The debugger starts faster than in Eclipse.+
  
 ===== Positive Points about Eclipse IDE ====== ===== Positive Points about Eclipse IDE ======
Line 24: Line 11:
 ==== Java Projects ===== ==== Java Projects =====
  
-  * You get all the features of the IDE for free. If you want to use Java EE features or Spring beans refactoring in Intellij IDEA, you have to pay for the Ultimate Edition. +  * **You get all the features of the IDE for free**. If you want to use Java EE features or Spring beans refactoring in Intellij IDEA, you have to pay for the Ultimate Edition. If you want to run integration tests inside the IDE and have autocompletation in Impex files, you have to pay for the Hybris Integration Plug-In. 
 + 
 +<WRAP center round important> 
 +Since June 2019 you not only have to pay for the Intellij IDEA Ultimate but also for the Hybris Integration Plug-in. Those tools are worth the EUR 500/200 your company paids the first year((as invidual or after two years it is cheaper)) because they speed up your development. But use the 30-days trial decide on your own. 
 +</WRAP> 
  
 ==== Hybris Projects ===== ==== Hybris Projects =====
Line 32: Line 24:
   * The integration of Sonar in SAP Hybris Projects works. The current version of the two Sonar plugins for Intellij don't support multiple modules((As of July 2016)).   * The integration of Sonar in SAP Hybris Projects works. The current version of the two Sonar plugins for Intellij don't support multiple modules((As of July 2016)).
  
-===== Neutral Points ======+===== Positive Points about Intellij IDEA ====== 
 + 
 +==== Java Projects ===== 
 + 
 +  * **There aren't any refresh problems**. After an ´ant clean all´ you have to wait 10-15 seconds until Intellij reindexes all the files and they you can work normally. This IDE also seems to react faster: There are times when Eclipse just hangs and you don't know what it is doing. 
 +  * **Refactorings are faster than in Eclipse.** Additionally the IDE doesn't crash during the process and Intellij seems to spot required changes in Spring application which Eclipse seem to miss (Ultimate Edition of Intellij IDEA). 
 +  * **Searching classes and files is faster** because the name matching algorithm doesn't require the use of asterisks and it matches the given characters in every part of the name. 
 +  * Windows arrangement: Although Eclipse has a more powerful windows management framework, I **find the right window faster in Intellij.** When I follow the call hierarchy of a method, I have ten windows open and not tons of them as in Eclipse. 
 +  * You can mark the folders which contain source code from tests. Then the search can classify the results in Production and Testing. 
 + 
 +==== SAP Hybris Projects ===== 
 + 
 +  * The analysis of Findbugs, PMD and Checkstyle using the QA plugin runs faster than in Eclipse and I can easily configure what issues I would like to analyse 
 +  * **The debugger starts faster than in Eclipse** 
 + 
 +===== Negative points about Intellij IDEA ====== 
 + 
 +==== SAP Hybris Projects ===== 
 + 
 +  * **The hybris runner which generates the models and triggers the build callbacks don't work.** Before running the integration tests, you have to run ant all in a console to generate the update Hybris code. 
 + 
 +===== Neutral Points about Intellij IDEA ======
  
 ==== Java Projects ===== ==== Java Projects =====
Line 42: Line 55:
  
   * The import of the eclipse project configuration files into Intellij IDEA works correctly. But Intellij has another classification of the folders and it is useful to tell him which are the generated and test classes.   * The import of the eclipse project configuration files into Intellij IDEA works correctly. But Intellij has another classification of the folders and it is useful to tell him which are the generated and test classes.
-  * **Unit and Integration tests work**. In Intellij you have to import the whole project using the [[https://bitbucket.org/AlexanderBartash/impex-editor-intellij-idea-plugin|Hybris Integration plugin]] or to correct the dependencies of all the modules in the platform directory manually.+  * **Unit and Integration tests work**. In Intellij you have to import the whole project using the [[https://plugins.jetbrains.com/plugin/7525-hybris-integration|Hybris Integration plugin]] or to correct the dependencies of all the modules in the platform directory manually.
  
-===== Positive Points about Intellij IDEA ====== 
  
-===== SAP Hybris Projects ===== 
  
-  * **The hybris runner which generates the models and triggers the build callbacks don't work.** Before running the integration tests, you have to run ant all in a console to generate the update Hybris code. 
  
-====== Conclusion ======+===== Conclusion ======
  
 I use Intellij IDEA for everything because the IDE reacts faster and I don't have any refresh issues. But: I use Intellij IDEA for everything because the IDE reacts faster and I don't have any refresh issues. But:
  
   * After changes in the code, I build the project using ant clean all   * After changes in the code, I build the project using ant clean all
-  * After a SAP Hybris Version update, I recreate the project using the Hybris Plugin to have the right dependencies. Afterwards the integration tests work again+  * After a SAP Hybris Version update, I need to __refresh the dependencies the Hybris Integration Plugin__. Afterwards the integration tests work again 
 + 
 +<WRAP center round tip 100%> 
 +If you did this refresh (import of dependencies) and a **compilation error** still stops the execution of your unit and integration tests, edit the test's configuration. Replace the "before launch" step //build// with //build, no error check//. 
 +</WRAP>
  
---Based on Hybris 6.4+--Based on Hybris 6.4 and SAP Commerce 2005