What is difference between debug,build,deploy,run in a java program?