What am I doing wrong? hg: lambda/lambda/langtools: More bug fixes:

Howard Lovatt howard.lovatt at gmail.com
Wed Aug 18 18:53:50 PDT 2010


Hi Maurizio,

Latest push in Mercurial repository has ProxyHelper in javac.jar and
hence it now works for me, thanks. However there is another issue,
javac.jar has to be added to the runtime (because the runtime also
needs ProxyHelper).

Cheers,

 -- Howard.

On 17 August 2010 18:41, Maurizio Cimadamore
<maurizio.cimadamore at oracle.com> wrote:
> On 17/08/10 02:02, Howard Lovatt wrote:
>>
>> Hi Maurizio,
>>
>> I am using the script generated by running make from the Mercurial
>> repository, the pertinent line from the langtools/dist/bin/javac
>> script is:
>>
>>
>> "/System/Library/Frameworks/JavaVM.framework/Versions/1.7.0_2010_07_30/Home//bin/java"
>> "${bcp:+-Xbootclasspath/p:"$bcp"}" ${ea} ${javaOpts} -jar
>> "${mydir}"/../lib/javac.jar ${toolOpts}
>>
>
> the script assumes to be in a NetBeans like structure in which you have a
> dist/ folder with two subfolders, bin/ (where your javac/java scripts are)
> and lib/ where (javac.jar is). I guess that a failure to locate
> lib/javac.jar could cause the problem you are talking about - I'd suggest
> verifying that javac.jar is really accessible using the ../lib/javac.jar
> path (relative to the path in which the script you are calling is located).
>
> Maurizio
>
>
>> Where the java VM called is the MLVM from:
>>
>> http://www.concord.org/~sbannasch/mlvm/
>>
>> The javac script mentioned above is called by:
>>
>> $jdk/javac -Xlint:all -source 7 -XDallowFunctionTypes -d
>> ../build/classes $package/*.java
>>
>>
>> Cheers,
>>
>>  -- Howard.
>>
>> On 16 August 2010 17:59, Maurizio Cimadamore
>> <maurizio.cimadamore at oracle.com>  wrote:
>>
>>>
>>> Hi
>>>  From the message you are getting it seems like the special class
>>> com.sun.runtime.ProxyHelper is not included in the boot classpath, this
>>> causing the completion error to occur when the compiler tries to generate
>>> code that depends on such class. How are you invoking the lambda compiler?
>>>
>>> Maurizio
>>>
>>> On 15/08/10 22:46, Howard Lovatt wrote:
>>>
>>>>
>>>> @Remi,
>>>>
>>>> The syntaxes (sp ?) Person#compareByAge and Person#compareByAge(
>>>> Person, Person ) result in:
>>>>
>>>> An exception has occurred in the compiler (1.7.0-internal). Please
>>>> file a bug at the Java Developer Connection
>>>> (http://java.sun.com/webapps/bugreport)  after checking the Bug Parade
>>>> for duplicates. Include your program and the following diagnostic in
>>>> your report.  Thank you.
>>>> com.sun.tools.javac.code.Symbol$CompletionFailure: class file for
>>>> com.sun.runtime.ProxyHelper not found
>>>>
>>>> The syntax Person#compareByAge() results in:
>>>>
>>>> lambdas/Main.java:35: method compareByAge in class Person cannot be
>>>> applied to given types
>>>>     Arrays.sort( people, Person#compareByAge() );
>>>>                                ^
>>>>   required: Person,Person
>>>>   found: no arguments
>>>>
>>>> Implying that Person#compareByAge( Person, Person ) is the correct
>>>> syntax, however that causes the above exception.
>>>>
>>>>
>>>>
>>>
>>>
>>
>>
>> --
>>   -- Howard.
>>
>
>



-- 
  -- Howard.


More information about the lambda-dev mailing list