java.dyn still in ProxyHelper

Robert Field robert.field at oracle.com
Tue Apr 5 07:38:06 PDT 2011


On 04/05/11 01:26, Maurizio Cimadamore wrote:
> 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).

It builds fine with a b134 snapshot as BOOTDIR

-Robert

>
> 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