Java application and component developers have a tendency to rely on a popular fiction known as the "vanilla VM configuration." The choice to rely on the VM to provide adequate, scalable runtime facilities for "real world" applications is often made out of lack of understanding, not expediency. This white paper demonstrates why Java developers need a non-trivial understanding of their runtime environment, the Java VM, by illustrating how some of the most common Java development assumptions can be harmful to a real-world Java application. As a concrete example, this paper addresses why relying on the system classpath is not a good idea in several different scenarios.