• JVM
    July 7, 2011

JSR 292 launched in Java 7

John Rose
We just finished graduation season for another bunch of students. (Congratulations, Bobby and Joe!) And after about four years of work, it feels to me like JSR 292 has graduated. Oracle launched Java 7 today. I spoke on 292; here are my slides. The webcast will be posted on the Java 7 launch site in a few days.

Thanks, everyone, for your help!

Join the discussion

Comments ( 4 )
  • Arul Saturday, July 9, 2011

    Awesome talk! I enjoy your computer sciency talks :-)

    Probably a typo in slide#22?

    assertEquals("xy".hashCode(), (int) HASHCODE.invoke("xy"));

    Should this be instead?

    assertEquals(System.identityHashCode("xy"), (int) HASHCODE.invoke("xy"));


  • guest Tuesday, July 12, 2011

    Hi John

    The 292 stuff is clearly the most significant innovation in java for... well, for ever.

    I've been trying to build the samples in the test/jdk/lang/invoke directory but with no success. For example if I try compiling InvokeDynamicPrintArgs.java then I get a bunch of errors that start with this:

    test/java/lang/invoke/InvokeDynamicPrintArgs.java:114: error: package indify does not exist



    test/java/lang/invoke/InvokeDynamicPrintArgs.java:192: error: constructor ConstantCallSite in class ConstantCallSite cannot be applied to given types;

    super(type, MH_createTarget());


    required: MethodHandle

    found: MethodType,MethodHandle

    Now this looks quite reasonable because the constructor that is being called is marked as protected.

    Is there a secret flag or some alternative mechanism to get these samples to compile?



  • Herve Monday, July 18, 2011

    invokedynamic is really a great achievement for Java and the JVM!

  • Alex Cruise Thursday, September 29, 2011

    So, what's next? :)

Please enter your name.Please provide a valid email address.Please enter a comment.CAPTCHA challenge response provided was incorrect. Please try again.