well,the title says it all. What are the disadvantages and advantages? Is it better to compile java in ms-dos or in IDE such as eclipse(which is popular as they say).
Which do you prefer?

The general consensus here is that beginners should stay with the simple command prompt applications (code editor, javac, java) until they have a solid base of understanding of Java.
IDEs such as Netbeans or Eclipse provide a toolset that gives experienced users a huge increase in productivity, but if you don't understand what the IDE is doing with your code, and why, its easy to loose control of the situation. There's also a big learning curve for the IDEs themselves, which is hard to tackle when you're still in the steepest part of the Java learning curve.

I prefer using an IDE so I don't have to keep checking for the classpath, path and changing the directory to compile the java files I need. The IDE will have these details always stored and know which files I'm compiling without having to specify directories.

IDE's are a lot more flexible with the error messages also, as, on double-click, can direct you to the faulty line of code.

Well I learned Java with javac command prompt which gave me a basic idea of how java works
When I moved on to netbeans(IDE) I felt more relaxed as it made coding easier as it provided suggestion, corrections, shortcuts etc.

I suggest that beginners should learn java with simple command prompt applications

the best way to start is with a simple editor: notepad++ for instance.
no autocomplete, so you'll learn the actual code and won't depend to hard on the IDE to do the work for you.

the same goes for compiling. sure, an IDE can make compiling really easy, but that doesn't mean you shouldn't at least try to figure out what parameters you can give the compiler, and what the compiler can do, before you let a tool that hides all that do it for you.

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.