LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Slackware (http://www.linuxquestions.org/questions/slackware-14/)
-   -   Java developers: What IDE do you use for Java in Slackware? (http://www.linuxquestions.org/questions/slackware-14/java-developers-what-ide-do-you-use-for-java-in-slackware-4175474540/)

Kallaste 08-24-2013 12:58 PM

Java developers: What IDE do you use for Java in Slackware?
 
I'm an IDE hopper myself, having tried a whole slew of text editors, as well as NetBeans, Eclipse, and IntelliJ IDEA. I find myself wondering how many other Slackers program in Java, and how they do it. So I've listed every (semi-reasonable) possibility I can think of. Hopefully I haven't forgotten anything major.

Feel free to give the details of your setup (plugins, etc.) and reason for your choice as well. Maybe it will help others in the future. Votes are public and multiples are allowed. :)

jprzybylski 08-24-2013 01:19 PM

Only did java programming in a university course, but I stuck to vim the whole way through.

cisneros 08-24-2013 03:36 PM

I use geany for everything from Python, PHP, to Java and Javascript.

And im with jprzybylski, only did java programming in school.

gargamel 08-24-2013 04:02 PM

The most important part of any IDE is the editor, and I prefer VIM for that, but also use Kate, Geany, and JuffEd. Sometimes, however, a fully-fledged IDE is really useful, as it helps to automate the whole build process and supports the editor with code completion and also helps to avoid bad mistakes regarding type casts etc.

gargamel

gargamel 08-24-2013 09:21 PM

Looking at the list of tools I miss XDEV 3. Quite popular, very good for RAD, it seems, and free of license costs (but not open source).

gargamel

astrogeek 08-24-2013 09:41 PM

I don't do much java myself, but my son sits on the other side of the room most days with a Vim full of java code. Tmux and Vim on a Slackware GNU/Linux platform is pretty much unbeatable, so we have no need for lesser IDEs!

Richard Cranium 08-24-2013 09:41 PM

I use NetBeans.

In my day job(TM), I work on a product with just over 2 million lines of java source.

A lot of my co-workers use Eclipse and appear to be happy with it.

Kallaste 08-24-2013 10:09 PM

Quote:

Originally Posted by gargamel (Post 5015301)
Looking at the list of tools I miss XDEV 3. Quite popular, very good for RAD, it seems, and free of license costs (but not open source).

gargamel

In creating the list I deliberately left out anything centered on Rapid Application Development, because it really is a totally different paradigm. Programming without programming is a novel concept, to be sure, but there's no substitute for writing code. (At least I hope not. Otherwise, I'm going to be pretty miffed in twenty years' time when no one remembers how to maintain the programs we wrote to write our code for us. ;))

Thanks for the link to JuffEd. Also, I might give XDEV 3 a spin, just to try! It does look pretty intriguing. That's how they get you, of course . . .

Richard Cranium 08-25-2013 12:15 AM

Quote:

Originally Posted by gargamel (Post 5015187)
The most important part of any IDE is the editor, and I prefer VIM for that, but also use Kate, Geany, and JuffEd. Sometimes, however, a fully-fledged IDE is really useful, as it helps to automate the whole build process and supports the editor with code completion and also helps to avoid bad mistakes regarding type casts etc.

gargamel

It depends on the size of the project, but a lot of times the most useful part of an IDE are its ability to perform auto-completion on method calls and being able to find out the answer to questions like "who calls this method on this object?" or "what implements this interface?" or "what are the subclass of this class?"

astrogeek 08-25-2013 01:06 AM

Quote:

Originally Posted by Richard Cranium (Post 5015334)
It depends on the size of the project, but a lot of times the most useful part of an IDE are its ability to perform auto-completion on method calls and being able to find out the answer to questions like "who calls this method on this object?" or "what implements this interface?" or "what are the subclass of this class?"

But grep, sed, awk and company, and some good filesystem organization habits are 'as' or 'more' effective for those same tasks, for those who learn their basic usage (nothing advanced necessary - lucky for me!).

I have seen argumets that once a project reaches a certain size you just have to use an IDE, but my experience has been just the opposite. Having my "fingertips" on the code becomes an even greater advantage as things grow.

I am not arguing against IDEs actually. I have tried to use a few over the years but always revert to the shell.

I think it has more to do with how an individual learns - if they learned in an IDE then they are probably more comfortable in an IDE. But overall I do think it is a somewhat limiting environment.

Richard Cranium 08-25-2013 02:46 AM

Quote:

Originally Posted by astrogeek (Post 5015347)
But grep, sed, awk and company, and some good filesystem organization habits are 'as' or 'more' effective for those same tasks, for those who learn their basic usage (nothing advanced necessary - lucky for me!).

I take it that you have not worked on a very large Java project to make such a claim. Merely using grep to attempt to find the answers to those questions that I had posted will result in a large number of false positives. The various IDEs will parse the source files and create a cross reference database in order to correctly and swiftly answer such things. No false positives and no missed references.

I've worked on the aforementioned 2M LOC code base for ~10 years; I used JDEE for a good portion of that time and NetBeans for the last few years.

The productivity boost of NetBeans was sufficient for me to stop using Emacs for Java development and I'm a die-hard Emacs fan. (Now that CEDET is part of standard Emacs, there might be better source analysis for Java in Emacs' future that could be used to help with auto-completion and code crawling. But it isn't there now.)

Now, NetBeans is a Java application itself and needs a fair amount of heap to run efficiently (well, for a 2M LOC project anyways). So if you are in a resource constrained environment, you'll probable have to use something else.

I'll stop sucking the oxygen out of the thread now.

astrogeek 08-25-2013 03:03 AM

Quote:

Originally Posted by Richard Cranium (Post 5015370)
I take it that you have not worked on a very large Java project to make such a claim.

...I'll stop sucking the oxygen out of the thread now.

Thanks for your comments Richard.

No, I have not worked much with java at all (so arguably I should not even be here...), and have no experience with the java based IDEs at all.

But I have worked some very large, and intense C/C++ projects, among others, and base my comments on that experience.

And I agree, this thread is probably not the right place for further discussion on the topic, so I'll slink away now as well.

414N 08-25-2013 07:03 AM

I primarily use Eclipse although, sometimes, I seldom use Netbeans too.
What I find really useful in Eclipse are its automatic refactoring/completion features and the plethora of plugins available to extend the environment in a lot of ways for a lot of different purposes.
Speaking of Eclipse plugins:
  • I experimented a lot on Xtext-based projects (but also on Ecore/EMF ones), developing some domain languages and generators;
  • I often use the FindBugs plugin to spot potential issues in my projects;
  • I also use the C/C++ plugin with the autoconf/automake one when developing some C projects

meetscott 09-16-2013 11:54 PM

I use Intellij for all my work. I'm a recent convert, less than a year. But it is the best IDE by far. It uses the least amount of resources, has the most features and is the most stable.

I'd say it uses about half the resources of STS or Netbeans. It has excellent support for frameworks like navigating Tiles references for example. It supports aspects better than anything else out there. It's much more stable and less prone to locking up. You can run JPA queries on the fly outside of running your application. I could go on and on because there are tons of little features that are great too.

Prior to that, I was a Netbeans guy for 6 years. It's a great IDE too. I like the app server hooks the best on Netbeans because it runs things as you would outside the IDE. Maven builds are native now too so there's no special IDE specific structures to maintain in Netbeans. Netbeans has no AspectJ support though. This makes is a hard IDE to use with Aspect development and frameworks like Spring Roo.

I've also used Eclipse and the Spring Source Tool Suite, sometimes known as STS. I hate Eclipse and all its derivatives. I wish it would go away. Each release seems to get less and less stable. I keep up with it because it's so popular and I like being able to help other people with their problems. And people have a lot of them with STS or Eclipse because it's such a kludge. I can't believe the resources that are wasted on getting things working in Eclipse. It's especially egregious because it eats itself once in a while and has to be reinstalled. This is on all platforms, Windows, Linux and Macs.

Some projects force the use of one IDE, usually Eclipse, because the project has done something stupid with the build and no one has the time or the know how to fix it. I hate these projects and it gives Java a bad name because continued development is invariably hindered by other nonsense in the code base.

On a happier note, I use Slackware for everything. It's been my primary development platform for the last 5 years at work. I'm a consultant so I end up in a lot of different environments with various clients. Linux is the way to go. No one runs their app servers for Java on Windows so it usually works out well even in Windows centric environments. Windows is such a dismal platform for Java development.

mcnalu 09-17-2013 03:03 AM

I use netbeans for one large java project and find it invaluable. For smaller projects on C, python or php I prefer to use vim or Kate plus command line tools.


All times are GMT -5. The time now is 05:00 PM.