This week's book giveaway is in the OCAJP 8 forum. We're giving away four copies of OCA Java SE 8 Programmer I Study Guide and have Edward Finegan & Robert Liguori on-line! See this thread for details.
when you launch Tomcat using one of the scripts that starts the server, such as catalina.sh, the script will default CATALINA_HOME and CATALINA_BASE to point to the parent of the directory containing the script. You do need JAVA_HOME, though - it must point to a JDK for Tomcat6 or lower. I can't remember if they managed to finally remove this restriction in Tomcat 7.
The only times you HAVE to set CATALINA_HOME and/or CATALINA_BASE are if you want to override the default values. Most commonly, you'd do that if you were using the same Tomcat binaries to run multiple instances of Tomcat.
An IDE is no substitute for an Intelligent Developer.