java.dyn still in ProxyHelper

Maurizio Cimadamore maurizio.cimadamore at oracle.com
Tue Apr 5 01:26:38 PDT 2011


On 05/04/11 07:22, Robert Field wrote:
> The problem seems actually to be quite simple: the lambda repo hasn't
> been sync'ed with the JDK7 repo in long enough that MethodHandle clashes
> with the latest snapshot (and even, I think, a couple build before).
> The lambda repo, in both lambda/jdk/src and
> lambda/langtools/src/share/classes/com/sun/runtime/ProxyHelper.java
> have/use java.dyn.MethodHandle; Whereas the snapshot has
> java.lang.invoke.MethodHandle.
Right - lambda repo is fine in itself - the problem is when you compile 
langtools against a newer version of the JDK (which have 
java.lang.invoke.MethodHandle instead of java.dyn.MethodHandle).

Maurizio
> -Robert
>
>
> On 04/04/11 22:23, Howard Lovatt wrote:
>> Thanks for the suggestion. I deleted my langtools and started again,
>> but I got the same error :(
>>
>> On 5 April 2011 15:06, Robert Field<robert.field at oracle.com
>> <mailto:robert.field at oracle.com>>  wrote:
>>
>>      If you do an fpull and fupdate you won't get this any more.  But
>>      you may
>>      get what I'm getting:
>>
>>         Using boot class path =
>>
>>       [/export/home/robert/work/lambda/build/solaris-i586/tmp/rt-orig.jar,
>>
>>       /export/home/robert/work/lambda/build/solaris-i586/langtools/dist/bootstrap/lib/javac.jar,
>>         /usr/jdk/instances/jdk1.7.0/jre/lib/resources.jar,
>>         /usr/jdk/instances/jdk1.7.0/jre/lib/sunrsasign.jar,
>>         /usr/jdk/instances/jdk1.7.0/jre/lib/jsse.jar,
>>         /usr/jdk/instances/jdk1.7.0/jre/lib/jce.jar,
>>         /usr/jdk/instances/jdk1.7.0/jre/lib/charsets.jar,
>>         /usr/jdk/instances/jdk1.7.0/jre/classes,
>>         /usr/jdk/instances/jdk1.7.0/jre/lib/ext/sunec.jar,
>>         /usr/jdk/instances/jdk1.7.0/jre/lib/ext/sunpkcs11.jar,
>>         /usr/jdk/instances/jdk1.7.0/jre/lib/ext/dnsns.jar,
>>         /usr/jdk/instances/jdk1.7.0/jre/lib/ext/localedata.jar,
>>         /usr/jdk/instances/jdk1.7.0/jre/lib/ext/sunjce_provider.jar,
>>         /usr/jdk/instances/jdk1.7.0/jre/lib/ext/zipfs.jar,
>>         /usr/jdk/packages/lib/ext/jhall.jar]
>>         Ignoring (other) javax.xml.ws.wsaddressing.package-info :<any>
>>             ClassSymbol<any>
>>         Ignoring (other) javax.xml.ws.spi.http.package-info :<any>
>>             ClassSymbol<any>
>>         *error: java.lang.invoke.MethodHandle: class file for
>>         java.lang.invoke.MethodHandle not found
>>         *error: class file for java.lang.invoke.MethodHandle not found
>>         1 error
>>         gmake[2]: *** [initial-image-jdk] Error 1
>>         gmake[1]: *** [jdk-build] Error 2
>>         gmake: *** [build_product_image] Error 2
>>
>>      Problem seems to be that rt_jar_list still has
>>      java/dyn/MethodHandle.class but not java/lang/invoke/MethodHandle.
>>
>>      I'm trying to figure out why.
>>
>>      Maurizio, any ideas?
>>
>>      I'm using the latest JDK7 snapshot (b136) as BOOTDIR.  On Solaris
>>      10 x64
>>      Intel.
>>
>>      -Robert
>>
>>
>>
>>      On 04/04/11 21:50, Howard Lovatt wrote:
>>      >  Hi,
>>      >
>>      >  When I try and compile the latest javac from the repository on
>>      my Mac
>>      >  using Stephen's latest MLVM (4 April) I get the following error:
>>      >
>>      >  build-classes-javac:
>>      >    [pcompile] Generating 5 resource files to
>>      >  /Users/lov080/Downloads/MLVM/JDK7/langtools/build/gensrc
>>      >       [javac] Compiling 89 source files to
>>      >  /Users/lov080/Downloads/MLVM/JDK7/langtools/build/classes
>>      >       [javac]
>>      >
>>      /Users/lov080/Downloads/MLVM/JDK7/langtools/src/share/classes/com/sun/runtime/ProxyHelper.java:31:
>>      >  package java.dyn does not exist
>>      >       [javac] import java.dyn.MethodHandle;
>>      >       [javac]                ^
>>      >       [javac]
>>      >
>>      /Users/lov080/Downloads/MLVM/JDK7/langtools/src/share/classes/com/sun/runtime/ProxyHelper.java:39:
>>      >  cannot find symbol
>>      >       [javac]     public static<T>   T makeProxy(final
>>      MethodHandle mh, final
>>      >  Class<T>   sam, final boolean passMH) {
>>      >       [javac]                                         ^
>>      >       [javac]   symbol:   class MethodHandle
>>      >       [javac]   location: class ProxyHelper
>>      >       [javac] 2 errors
>>      >
>>      >  BUILD FAILED
>>      >
>>      >  Is JDK7 converted to java.lang.invoke yet?
>>      >
>>      >  Thanks,
>>      >
>>      >
>>      >     -- Howard.
>>      >
>>
>>
>>
>>
>>
>> -- 
>>    -- Howard.
>>
>



More information about the lambda-dev mailing list