Is it normal to have duplicate JVMs or JDKs in a MacBook?
That is normal but they are not exact duplicates. To test I just installed the 
developer package that you mentioned. This added the two Java SE6 non system lines.

So I think the four packages you see are split by 32 or 64 bit and whether they are the JDK or the JRE needed to just run java and installed when you are asked to run a Java program or web plugin.

As to the 'wierd' errors best to show those and the code in a question on Stack Overflow.