in sling we use the animal sniffer plugin for exactly this purpose [1].
it checks that the compiled codes only uses signatures available in the 
configured jdk.

stefan

[1] http://www.mojohaus.org/animal-sniffer/animal-sniffer-maven-plugin/

>-----Original Message-----
>From: Tomek Rekawek [mailto:[email protected]]
>Sent: Monday, September 12, 2016 1:06 PM
>To: [email protected]
>Subject: Re: Minimum JDK version
>
>Hi,
>
>the interesting thing here is that we actually compile the code with -
>source and -target=1.6 in these branches [1][2]. However, the javac still
>uses the rt.jar coming from the current JDK and it does contain the
>java.nio package. It seems that the only way to check the API usage
>correctness is to switch to JDK 1.6.
>
>Or maybe there’s some way to validate whether the used packages matches
>selected JDK version (eg. via some plugin reading the @since javadocs in
>API classes)?
>
>Regards,
>Tomek
>
>[1] https://github.com/apache/jackrabbit-oak/blob/1.4/oak-
>parent/pom.xml#L97
>[2] https://github.com/apache/jackrabbit-oak/blob/1.2/oak-
>parent/pom.xml#L95
>
>
>--
>Tomek Rękawek | Adobe Research | www.adobe.com
>[email protected]
>
>> On 12 Sep 2016, at 11:42, Davide Giannella <[email protected]> wrote:
>>
>> Hello team,
>>
>> following the recent mishap about JDK version and releases highlighted
>> two main issues:
>>
>> cannot find jenkins for anything that is not 1.6
>>
>> we should enforce the build to build with the minimum required JDK.
>>
>> Now for the second point, this is easily achievable. What we have to
>> decide is whether we want this enforcement done on all the builds, or
>> only during releases build and checks.
>>
>> I'm for having it enforced on all the builds.
>>
>> Thoughts?
>>
>> Davide
>>
>>

Reply via email to