Check the flavor. You got a killer API that you just finished polishing off. You se TDD to develop it and it’s pristine with all green bars and crisp design. You went off and wrote it because a unit test on another project called for it. You feel like a Gladiator that just finished slaying 14 other opponents, a Rhino, and dismantled chariot. You plug prized production back into the calling project and kick off a build to see the tight integration and watch the unit tests paint their colors. “Wrong version! Got 49 but expected 47!” Goes the error message. D’oh! In your haste you never set the JDK level to the appropriate level before going off to waste time on an API that’ll never see the light of production. This just happened to me for about the second or third time in my life. It’s becoming more common to have a mixed version environment for one reason or another. On one project there was some servlet stuff that required either 1.4.2 or 1.3.1 of the JDK. On another project I had a Java 1.5 jar that needed to run on an older 1.4 platform. Even though I only used 1.4 features I couldn’t just change the compiler settings because it depended on unit test utilities also built under 1.5. Have any of you hit your head on similar problems? If so, how’d you fix it? Am I making my life much more difficult than it should be? Holla-back!