When migrating from Eclipse one may be missing the incremental compilation feature which compiles the code automatically and so called Problems pane with the list of all project errors/warnings.
Fortunately, there is an Eclipse Mode plug-in which you can install from Settings | Plugins.
In combination with the "Scope / Problems" mode of the Project View it provides similar functionality.
Make compiles only changed and dependant files, therefore it's very fast. In 60 000 classes project if you change one class not dependant on another classes, IDEA will compile only this class instantly. If other code depends on this class, it will also compile that code. Therefore IDEA Make is fully incremental, it doesn't compile what doesn't need to be compiled and is optimized for performance. If it doesn't work that way for you, there is probably some misconfiguration in the project. Contact support@jetbrains.com with a test case and we'll investigate your particular problem.
I didn't say make is slow, I just would prefer if there was no make.
Ie the extra step of having to hit "make" seems unnecessary and slow. If I hit return on a line of code I want to have confidence that it didn't break anything in any module and that the code is read to go. The way you describe it it sounds like there is not much difference but in actual workflow experience this is worlds apart. Maybe IDEA could have an "automake" option?
The plug-in mentioned in this article already does it. Also, Run/Debug configuration has an option to Make before Run. Another way for Eclipse users would be to change the keymap for Ctrl+S from Save All to Build | Make, because Build | Make will Save automatically. So you will get Make on every Save and ensure that code compiles. I don't see any problem here.
If you're coming from eclipse, setting ctrl-s to make is good but also remember to set compile in the background.
Also, you might want to think about changing the compiler from javac to eclipse as it is a lot faster. Note however that there have been some cases when it compiles using the eclipse compiler but doesn't when it hits the build server. It appears that sometimes the eclipse compiler isn't as fussy as the javac one.
I am a long time IntelliJ user, great product. I began working on a project where the developers use MyEclipse and used it myself for a while to "fit in" and avoid other problems while learning the new codebase. After using MyEclipse for several months, I went back to IntelliJ. I found that I couldn't auto-build/deploy like I had been doing in Eclipse. The Eclipse auto-compilation feature is seamless and works extremely well. It is also very fast.
IntelliJ has a much nicer user interface and better tools and refactoring and I hate the Eclipse perspectives compared to IntelliJ. However, the Eclipse ability to save changes and have them immediately take effect without any other user intervention and having the debugger take you back to the last frame is very addictive and makes IntelliJ feel clunky in comparison. Please integrate this wonderful Eclipse feature into IntelliJ so that I can have the best of both.
Compiling my project with intellij, if any compilation error occurs, compilating classes don't appear into compiling output path. I know that eclipse compile those classes that can compile and show compilation result into compiling output path.
Can intellij make something like that?
Thanks
This behavior is compiler dependent, try switching IDEA to Eclipse compiler in Settings | Compiler.
That's great but does it actually do incremental compilation? This is the main reason I never wanted to switch to IDEA because when you are used to Eclipse the first thing you encounter in IDEA - before you see anything else - is that you have to make and compile your product. And it takes a while.
In Eclipse, I never "make" anything. I just hit run whenever I want to run my app. Only when things get screwed up, maybe once a month or so, I do a clean and recompile everything from scratch (it takes less than a minute for a pretty large workspace with about 50 projects so it's not too bad either).
There are other benefits as well: When I introduce an error in another project that is dependent, it shows up instantly. In IDEA, I have to do a full make. Perhaps this is what the plugin above does? Would be good. It's not just that I find the error sooner, it's also the confidence that there are no errors when no errors are showing. That's even more important when I do a project-spanning refactoring operation. I need to know that the refactoring didn't screw up along the way. Thanks to the incremental compiler, I know that right away.
If you are wondering why I post here when I mainly use Eclipse: I use IDEA for the UI designer only. The UI designer is absolutely fantastic, well worth the price of the whole IDE. I just wish it were available as an Eclipse plug-in