Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I do a lot of c# development work. Recently, our company decided it was important for webservices to be able to run on Unix machines, and decided that we should write new services in Java as a result. We've got licenses to IntelliJ, so I'll probably start with that as an IDE.

I've found it pretty easy to find resources about the Java language and the standard libraries. There are several low level details that are harder to find.

  • How do I (how should I?) setup a new project with unit tests?
  • How do you manage references? (I spent hours trying to figure out classpath stuff in eclipse a couple years ago)
  • How do you setup something equivalent to a .sln file?

So I need pretty low-level help, but without it focusing on code (I don't need help learning to write Hello World, or a for loop).

share|improve this question
I'm not sure this is on topic (SO might be a better fit) but I certainly don't think it's not constructive – jk. Mar 14 '13 at 11:10
I'm happy to change it or move it, I just need some help with this problem. If those of you who vote to close can give me some feedback about the problem and guidance on what I should do, I would appreciate it. – tallseth Mar 14 '13 at 11:14
@tallseth: I guess if you would have choosen a different title for your question (like "How to set up a Java project using IntelliJ") instead a title which sounds like "C# vs. Java", the chance of not getting your question closed would be much higher. – Doc Brown Mar 14 '13 at 11:46
A different question, but perhaps also of interest for you:… – Doc Brown Mar 14 '13 at 11:48
tallseth - here's how you can improve your question. 1) get rid of the resource request(s) - they are the source of the not constructive votes. 2) get rid of your 4th bullet, same reason as #1. 3) your first 3 bullets could be broken out into separate questions. Remember to show what research you've already done and point out where you got stuck. You have some good questions in there about the transition from C# => Java; you just need to focus a question on each aspect. – GlenH7 Mar 14 '13 at 13:28

Just so you know if you're a C# shop and have significant experience you would be able to use Mono without problem.

How do I (how should I?) setup a new project with unit tests? The same way you would in .NET. The IDE will have the facility to run tests; If you use NUnit you will be happy to know JUnit is what inspired it.

How do you manage references? (I spent hours trying to figure out classpath stuff in eclipse a couple years ago) Maven. I still think it's better and more powerful than nuget. With that said whilst they're comparable they are not one in the same.

How do you setup something equivalent to a .sln file? I don't know about IntelliJ but I've used JetBrains PHPStorm which is based on the same code I believe, you can have multiple projects open at the same time. If you move to Eclipse, it'll be a Workspace.

A lot of big / common .NET libraries (NHibernate, NUnit spring to mind) are ports from Java so if you have experience with these then you should find the transition easier.

share|improve this answer

We're a .net house and before starting a new product last year were given the "This needs to run on 'nix" mandate also.
We proved our code against mono, and developed our webservices with ServiceStack.

I didn't do the proving, we are now coming up to a first release which we know will be Windows & MS-SQL specific, our next target is to get the full product up and running on Unix, MySQL and Oracle.

We know from our proving work that we'll have more to do integrating with the new databases than we will getting the full product running on 'nix systems.

Not a line of Java was written.

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.