Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Release vs Debug Mode in IDE

I've always wondered what the different "deployment modes" (Release Mode, Debug Mode, etc.) were in various IDEs (Visual Studio, Netbeans, etc.). I'm sure they mean different things based on the languages and platforms the IDE supports, but there has to be a common underlying intention with marking a project as "Debug" as opposed to "Release" Mode.

What's the difference between these modes? How does the IDE treat them differently at compile/run/deployment time? Is there a way for you to customize your own Mode ("Dev Mode", "QA Mode", etc.)? If so, what are typical custom setups?

Thanks!

like image 522
Pam Avatar asked Feb 02 '11 14:02

Pam


1 Answers

Typically Debug Mode contains all possible forms of debugging information, which are stripped out in the Release Modes.

This is an inheritance from native languages like C where you run the code you generate. It is much less a problem with Java as the typical usage is through a JVM doing an additional compilation step.

Debugging information may be very handy even for a Release Mode build, as it allows the JVM to provide more detailed information in stack traces etc.

like image 195
Thorbjørn Ravn Andersen Avatar answered Sep 26 '22 21:09

Thorbjørn Ravn Andersen