I had an Intelligent IDEA: Two days without NetBeans …

Yesterday and the day before I tried the unbelievable: I used not my favourite IDE NetBeans (6.7) – I used IntelliJ Idea (8.1). Five months ago I got the free license from Jetbrains for my open source timetabling application called TimeFinder, but I hadn’t the time to try it out. And why should I?

People from Pannous say Idea is the best IDE and everywhere else I could read about fantastic features. But read this to get an answer from Jetbrains and read the text below to get subjective impressions on the subject “IntelliJ IDEA as a NetBeans user”.

Every start is stony, so I tried to configure the layout and some more things to my needs. Then Idea looked good although not like a native application (which is great under gnome ;-)) The most important step I did too late, but you should do it as a first step: print the keyboard shortcut reference and highlight your important one. Another good resource for NetBeans user using Idea is the FAQ from Jetbrains, where I discovered that you can even use NetBeans shortcuts as well… and you don’t have to worry about using 2 IDEs at the same time:
“The NetBeans .nbproject directory and build.xml remain untouched, so you can continue using IntelliJ IDEA along with NetBeans.”

After this personal-warm-up I opened the root module of the maven project from TimeFinder and this worked simply by opening the project’s pom.xml. To run it a minor set up was necessary: the JDK_HOME and the M2_HOME (/usr/share/maven2 for ubuntu) needed some values. But after this I could run a file with a main method in it via CTRL+SHIFT+F10. The following points I made for myself along the days:

  • To import a J2SE project Idea is pretty slick: it searches even for existing jar files and allows you to specify a dependency.
  • Running single tests is possible with Idea.
  • You cannot select a local variable and the usages will be highlighted
    From comments: “Settings | Editor | Highlight usages of element at caret”
  • There is only one “Search” possible in Idea (Not several search tabs …)
    From comments: the “Find Usages” dialog has an option “Open in new tab”
  • The built-in on-the-fly static code analysis is be a bit more fined grained in Idea

The points are based on my own experience with 8.1.3, please search on the web to proof me wrong. And please think before you post some constructive comments and facts😉

My personal FAQ which I created to ask YOU:

  • Is there really no explicit handling for unit test folders?
    Answered. See comments
  • Does it really takes so long for project loading?
    See comments
  • Why is there no simple create jar from J2SE project?
    See comments
  • How can I move the tabs around?
    I would like to have my todo file always on the very left … regardless of when I opened it.
    See comments
  • Why is there no “test” button like there are “run” and “debug” buttons?
    See comments
  • Why I have to set the working directory for a maven configuration?
  • Is it possible to have two projects opened at the same time in the same frame?
    The FAQ answers this with:
    Each global window with IntelliJ IDEA instance represents a single project. Is this true?
  • Could you get rid of the three project files for Idea?
    Yes, there is a new directory-based project format available in IDEA and can be used instead of the traditional .ipr project format
  • Why is there a separate project called RubyMine? Is this the same like the ruby plugin?
    See comments
  • And how to import existing rails applications?
    From comments: use “New Project”, select Ruby module type and select the existing app directory as the location. Then select Ruby on Rails and “Use existing”.
  • Are there features from NetBeans that are not present in IntelliJ IDEA?
    With a honest answer in the FAQ:
    IntelliJ IDEA does not currently provide an RCP platform. Profiler is not available out of the box, although it can be installed as a plug-in. JavaFX support is still basic in IntelliJ IDEA and C/C++ is not supported. There are fewer visual designers in IntelliJ IDEA than in NetBeans, although visual approach seems to be less important for professional developers due to various limitations of visual designers. Other features should be on par or have better support in IntelliJ IDEA according to our current knowledge.
  • Are there features from IDEA that are not present in NetBeans?
    Please look in the FAQ for reasons.
  • Where is Matisse?
    You can read more about the designer used in Idea here.
  • BTW: Since when is Roman Strobl working for Jetbrains?But how can I run all tests in the test folder?

To come to a final conclusion I would like to know the answers on all these questions … although …

I think every IDE like eclipse, netbeans or idea is great as long as the developers are efficient with it (and knows how to configure/setup/work with). I think it is not wise for a company to force one IDE at work, because not all developer have the same knowledge or requirements. One user likes to configure everything and to work without the mouse, the other developer just want to start coding…

So, it is not really important if NetBeans is the best IDE or Idea or whatever – just use maven or ant projects (or some newer things) and every developer can get happy with its own favourite IDE.he “Find Usages” dialog has an option “Open in new tab”use “New Project”, select Ruby module type and select the existing app directory as the location. Everything will be configured automatically for you.

11 thoughts on “I had an Intelligent IDEA: Two days without NetBeans …

  1. i am a long-time intellij user and i am quite convinced it makes me a happier coder🙂
    * Is there really no explicit handling for unit test folders?
    No, there is! go to project settings – modules. there you can classify directories as “sources” “test” or “excluded”. intellij will behave slightly different for those.
    * Does it really takes so long for project loading?
    as long as you are using 8.1, yes. for a while. it takes long to start up when the project file definition changed, if you added a library or when starting up the first time. after the index is built it starts up reasonably fast. for my project index builing takes a couple of minutes. the time depends mostly on the number of libraries you use. with verison 9 there is “background indexing” wich will shorten project startup significantly.
    * Why is there no simple create jar from J2SE project?
    There is a menu entry – Build – Build Jars (Alt+BJ) where you can build jars for modules. you can also configure if the jars should be built on “make” (F9)
    * How can I move the tabs around?
    Not possible afaik. all tab options are under Settings-Editor-Editor Tabs. There is, however a specialized todo list support pane which is customizable. (at the bottom per default Alt-6)
    * Why is there no “test” button like there are “run” and “debug” buttons?
    when you configure a directory as “test” you can run all test cases in there with right-click “run all tests” or something. you can also right-click a package to un all tests in there.

  2. Does it really takes so long for project loading? – Not project loading but index building and yes. In IDEA 9 it will be possible to build index in background.

  3. And how can I run all tests in the test folder? – When creating JUnit run confuguration take look at ‘configuration’ tab where ‘all in package’ option present.

  4. JUnit test folders? Ctrl+Alt+Shift+S -> Project Settings (left) -> Modules -> Select folder (right tree) and press ‘Test Sources’ green button.

    All green folders – are test sources.

  5. How can I move the tabs around? – Ctrl+Shift+N-> and you could easily open your TODO file whenever you want without mouse movements. IDEA kung-fu style is to use keyboard as much as possible.

  6. Why is there no simple create jar from J2SE project? – Build -> Build jars or use plugin smth like Jar Tool.

  7. Sorry that the approvement took so long …

    > Why is there no simple create jar from J2SE project?

    I really missed this! I don’t know why … I googled a lot for this feature and could only find a plugin … now thanks! this is great🙂

    > IDEA kung-fu style is to use keyboard as much as possible

    Yes, I know. Open “resource file” would also do the same.

    > JUnit test folders?
    > u can also right-click a package to un all tests in there.

    Ah, nice + thanks! this helped me as a newbie …

    > with verison 9 there is “background indexing” wich will shorten project startup significantly.

    ok. fine.

  8. Ah!! I missed an important question:
    are there no gnome users? Because the default key shortcut CTRL+ALT+L (reformat code) will enable the screenlock😦

  9. – Enable “Settings | Editor | Highlight usages of element at caret” to get automatic highlighting of identifier at caret
    – The “Find Usages” dialog has an option “Open in new tab” so you can have multiple search result tabs
    – Moving tabs around is currently supported natively when “Show tabs in single row” option is enabled. Alternatively, you can install the TabReorder plugin.
    – RubyMine has a simplified UI that doesn’t include stuff irrelevant for Ruby/Rails developers. It’s also cheaper than IDEA with Ruby plugin ($99 vs $599).
    – To import an existing Rails app, use “New Project”, select Ruby module type and select the existing app directory as the location. Everything will be configured automatically for you.

  10. Dear Dmitry,

    thanks for your detailed response, this helped me a lot!!
    (For others: search “Show tabs in single row” in the settings dialog to get this done …)

    > To import an existing Rails app

    Cool. I got the ruby plugin and all worked like you described! Specifying new ruby SDK was simple, too…

Comments are closed.