tomcat-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Christopher Schultz <ch...@christopherschultz.net>
Subject Re: Java 8 compatibility for Tomcat 7
Date Thu, 10 Apr 2014 08:34:29 GMT
Mark,

On 4/8/14, 10:55 AM, Mark Thomas wrote:
> On 08/04/2014 06:32, Emmanuel Bourg wrote:
>> Le 08/04/2014 14:03, Mark Thomas a écrit :
>>
>>> Can you provide the details of the failure. That might help ID a solution.
>>
>> Thank you, here is the build log on Debian:
>>
>> http://87.98.165.193/debian/openjdk8-rebuild/logs-failed-jdk8/tomcat7_7.0.52-1_unstable_jdk8.log
>>
>>     [javac]
>> /«PKGBUILDDIR»/java/org/apache/catalina/tribes/tipis/AbstractReplicatedMap.java:1107:
>> error: keySet() in AbstractReplicatedMap cannot override keySet() in
>> ConcurrentHashMap
>>     [javac]         public Set<Object> keySet() {
>>     [javac]                            ^
>>     [javac]   return type Set<Object> is not compatible with KeySetView
>>     [javac]   where K,V are type-variables:
>>     [javac]     K extends Object declared in class ConcurrentHashMap
>>     [javac]     V extends Object declared in class ConcurrentHashMap
>>
>>
>> This issue is caused by the addition of a keySet() method to
>> ConcurrentHashMap in Java 8 with a return type incompatible with the
>> keySet() method in AbstractReplicatedMap.
>>
>> In r1222329 AbstractReplicatedMap was changed to no longer inherit
>> ConcurrentHashMap and implement directly the Map interface. This had the
>> side effect of fixing this Java 8 issue for Tomcat 8.
> 
> That looks like something we are going to need to fix but any fix is
> going to have to change the API. On that basis, back-porting r1222329 is
> probably the best option.
> 
> Any objections to back-porting this fix to 7.0.x?

+1 to back-porting

-chris


Mime
View raw message