views:

197

answers:

11

I've been a Linux Java developer for years and have loved it. I just got a new laptop which is running Windows 7. I could wipe the drive and go back to my typical Linux dev setup: vim for editing, tabbed Bash windows running javac and java for smaller projects, ant for big projects

That said, I'm really thinking it couldn't hurt to learn to develop in a new environment. So, with that in mind, are there any Windows-based Java devs out there? What setup do you like to use to get things done? It'd be interesting to hear both ways to emulate my Linux-based environment as well as completely different styles that I might benefit from trying.

+1  A: 

I have always been a Java Windows developer, so I have never crossed into the Linux development side. My Windows Java IDE of choice has always been Eclipse for Java Developers.

I strongly encourage you to try developing in Java on Windows. Come to find out if you don't like it or nostalgia kicks in, (whichever comes first) I recommend downloading Sun's Virtual Box, install Linux along with your preferred tools for developing and you can now start where you had left off while still using Windows as your operating system.

Hope this helps.

Anthony Forloney
What do you develop in? Do you use an IDE? If not, is there some sort of better command line than the cmd that comes with the system? Even just installing a nice editor and having a nice command line tool would be nice.
JF
I had updated my answer, I've used a few: NetBeans, BlueJ and Eclipse. Eclipse took the cake for me.
Anthony Forloney
@JF: There's Cygwin (http://www.cygwin.com/) which will give you a linux like command line API in windows. There's also PowerShell console (http://technet.microsoft.com/en-us/library/ee177003.aspx) but that sort of requires learning PowerShell (language).
R0MANARMY
A: 

Java development ... with vim? (shudder)

You many wonderful IDEs out there. Eclipse among them - and it runs in Windows/Linux.

leonbloy
+7  A: 

I use NetBeans for all my Java development work, also on a laptop. (I recommend not wiping the drive of a laptop, as special software for laptop-specific features, e.g. webcam and Bios configuration, might not run on Linux: use virtualization for Linux)

Besides NetBeans I have Notepad++ for all "quick & dirty" programming, though start-up times for NetBeans 6.8 are so good and memory consumption is quite low, I often have NetBeans open all the time. NetBeans has ANT, and it has an intergrated console (with input!) for your smaller projects. No need to run in a seperate window.

It takes some time to configure everything right in Netbeans & Notepad++ (think of templates, code-completion timing, indentation, colouring, paths, etc.) but once you've got it, it works like a charm.


I tried Eclipse, but it's really a matter of taste; I never have liked SWT applications.

Pindatjuh
+2  A: 

Well, there's always your friend the IDE! Both Netbeans and Eclipse are free to try out and work well on Windows, Linux, and Mac.

While there's something to be said for the dedicated editors of the world like Vi and Emacs, I sometimes find the jack-of-all-trades IDE that is dedicated to doing everything for your programming needs and doing them all adequately to be pretty handy.

John Munsch
+5  A: 

When I was doing Java development on Windows I used Eclipse as the IDE. It would be quite a different setup from what you're used to, and Eclipse does require a bit of cuddling before it puts out but overall it was a fairly pleasant experience.

If you rely on outside packages for your development you might want to look into Maven. When I used it it was a really nice way to manage dependencies and be able to pull down the latest version of each package I relied, build it from source, and make sure my code still played nice with the latest release of said packages.


If you are partial to VIM as an interface you might also be interested in this question: Vim Commands in Eclipse.

R0MANARMY
+1 because it mirrors how I think/feel
Jacob
+2  A: 

If I had a choice I would probably use Eclipse. It is a good looking, easy to use and flexible IDE tailored mostly for Java, although with plugins (of which there are heaps!) it can do anything (or near enough :)

However at work we must use IntelliJ which is commercial. Great product with heaps of features and because it is designed for Java development it really supports it in as many ways as possible.

Both IDEs can be used with ANT or if you want something different, and I have heard more powerful, you could check out Maven.

Jacob
+1  A: 

In terms of emulating a linux environment, have a look at Cygwin.

In terms of what to use in Windows, an IDE is really a must. There are three worth looking at out of the box: Eclipse, NetBeans and IDEA. All are open source, but IDEA's open source version is kind of crippled. Beyond basic JavaSE development you need the paid for version, but then again it is as good as vim and bash in almost anything. Eclipse is "standard." And NetBeans is the closest to the bleading edge.

All of those IDEs run on Linux as well, so if you haven't used one until now, I imagine you will gravitate towards Cygwin, at which point you might as well wipe and install your favorite Linux distro.

Yishai
A: 

If you don't want to be an adventurer to use an IDE, download cygwin and setup a 'linux-like' development enivornment, that's what i do for my own projects when the final server is on a Linux env and i want to keep the same build scripts and environment, even u can use rsync to keep them in sync if u want to have a backup linux env. for development.

Edgar Zavala
A: 

I used Eclipse IDE for all my Java needs throughout my semester long Java course. I also used the vrapper plugin to get the vim keybindings for movement.

I know for a fact that going this route made writing Java code a whole lot easier than had I gone my normal route of vim+command line. I'm also fairly sure that is the environment my brother uses programming for Amazon.

For writing Java code on windows OR linux (I mostly exclusively use linux), Eclipse is the best. Having also used NetBeans, I can tell you my preference was for Eclipse - it felt more solid, more "real". I'm not sure how else to describe it. Of course I never worked on a huge (> 2000 LOC) -- ((< 2000 LOC) if you read LISP) -- program, so I don't have any experience with the serious sluggish issues formerly mentioned.

Wayne Werner
A: 

Linux will be a bit faster compared to Windows. Personally I would love to stay with Linux but try using IDE like Eclipse/NetBeans which are highly used in project development.

Phani
+1  A: 

definitely use an IDE. I recommend http://www.jetbrains.com/idea/free_java_ide.html

irreputable