sjavac always compiled?

Erik Joelsson erik.joelsson at oracle.com
Wed Jun 10 08:00:30 UTC 2015


Hello,

Sjavac has always been compiled in the interim langtools step, the 
configure flag only affects using it to compile the rest of the java 
classes.

Has a bug been created for this?

/Erik

On 2015-06-10 09:53, Alan Bateman wrote:
>
> There was a sjavac update pushed to jdk9/dev yesterday (JDK-8054717). 
> I seem to be running into build issues on OS X since then (clean 
> build, not a reconfigure). My boot JDK is 8u31. My configure command 
> does not specify --enable-sjavac so I'm surprised this code is being 
> compiled.
>
> Anyone else seeing this?
>
> -Alan
>
> Building target 'default' in configuration 
> 'macosx-x86_64-normal-server-release'
> Compiling 830 files for BUILD_INTERIM_LANGTOOLS
> /ws/jdk9-dev/langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/Util.java:231: 
> error: no suitable method found for 
> collect(Collector<T#1,CAP#1,Map<I,T#1>>)
>         return c.stream().collect(Collectors.toMap(indexFunction, o -> 
> o));
>                          ^
>     method Stream.<R#1>collect(Supplier<R#1>,BiConsumer<R#1,? super 
> CAP#2>,BiConsumer<R#1,R#1>) is not applicable
>       (cannot infer type-variable(s) R#1
>         (actual and formal argument lists differ in length))
>     method Stream.<R#2,A>collect(Collector<? super CAP#2,A,R#2>) is 
> not applicable
>       (cannot infer type-variable(s) R#2,A,CAP#3,T#3,K,U
>         (argument mismatch; Collector<CAP#2,CAP#4,Map<I,Object>> 
> cannot be converted to Collector<? super CAP#2,CAP#4,Map<I,Object>>))
>   where T#1,I,R#1,T#2,R#2,A,T#3,K,U are type-variables:
>     T#1 extends Object declared in method <I,T#1>indexBy(Collection<? 
> extends T#1>,Function<? super T#1,? extends I>)
>     I extends Object declared in method <I,T#1>indexBy(Collection<? 
> extends T#1>,Function<? super T#1,? extends I>)
>     R#1 extends Object declared in method 
> <R#1>collect(Supplier<R#1>,BiConsumer<R#1,? super 
> T#2>,BiConsumer<R#1,R#1>)
>     T#2 extends Object declared in interface Stream
>     R#2 extends Object declared in method <R#2,A>collect(Collector<? 
> super T#2,A,R#2>)
>     A extends Object declared in method <R#2,A>collect(Collector<? 
> super T#2,A,R#2>)
>     T#3 extends Object declared in method <T#3,K,U>toMap(Function<? 
> super T#3,? extends K>,Function<? super T#3,? extends U>)
>     K extends Object declared in method <T#3,K,U>toMap(Function<? 
> super T#3,? extends K>,Function<? super T#3,? extends U>)
>     U extends Object declared in method <T#3,K,U>toMap(Function<? 
> super T#3,? extends K>,Function<? super T#3,? extends U>)
>   where CAP#1,CAP#2,CAP#3,CAP#4 are fresh type-variables:
>     CAP#1 extends Object from capture of ?
>     CAP#2 extends T#1 from capture of ? extends T#1
>     CAP#3 extends Object from capture of ?
>     CAP#4 extends Object from capture of ?
> 1 error
>




More information about the build-dev mailing list