<div dir="ltr">That would be great. Thank you.<br></div><div class="gmail_extra"><br><div class="gmail_quote">On Tue, Dec 16, 2014 at 2:40 PM, Ceki Gülcü <span dir="ltr"><<a href="mailto:ceki@qos.ch" target="_blank">ceki@qos.ch</a>></span> wrote:<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><br>
Since this issue will affect all Scala users for the foreseeable future, I'll cut a new release without JSR 305 annotations.<span class=""><br>
<br>
On 12/16/2014 19:17, Elliot Huntington wrote:<br>
</span><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class="">
I understand now. Thank you Robert.<br>
<br>
On Tue, Dec 16, 2014 at 10:46 AM, Robert Elliot <<a href="mailto:rob@lidalia.org.uk" target="_blank">rob@lidalia.org.uk</a><br></span><span class="">
<mailto:<a href="mailto:rob@lidalia.org.uk" target="_blank">rob@lidalia.org.uk</a>>> wrote:<br>
<br>
It’s a scalac bug, not an SLF4J bug. See here:<br>
<a href="https://issues.scala-lang.org/browse/SI-5420" target="_blank">https://issues.scala-lang.org/<u></u>browse/SI-5420</a><br>
<br>
<br>
<br>
<br>
</span><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class="">
On 16 Dec 2014, at 17:30, Elliot Huntington<br></span>
<<a href="mailto:elliot.huntington@gmail.com" target="_blank">elliot.huntington@gmail.com</a> <mailto:<a href="mailto:elliot.huntington@gmail.com" target="_blank">elliot.huntington@<u></u>gmail.com</a>>><div><div class="h5"><br>
wrote:<br>
<br>
Please see the attached sscce and the bundled build.gradle file.<br>
It contains notes on how to reproduce the problem. It is<br>
configured by default to produce the problem. If you comment out<br>
the dependency for slf4j-api version 1.7.8 and add the line for<br>
the dependency to version 1.7.7, everything works fine.<br>
<br>
Please be sure to run the sscce with the following to make sure<br>
you're not caching any dependencies:<br>
<br>
$ gradle clean run<br>
<br>
------ Here is my environment configuration ------<br>
<br>
$ uname -a<br>
Linux machinename 3.13.0-24-generic #47-Ubuntu SMP Fri May 2<br>
23:30:00 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux<br>
(This is Linux Mint 17 with Cinnamon)<br>
<br>
export JAVA_HOME=/home/username/apps/<u></u>java_home<br>
export GRADLE_HOME=/home/username/<u></u>apps/gradle_home<br>
export SCALA_HOME=/home/username/<u></u>apps/scala-2.10.3<br>
<br>
$ java -version<br>
java version "1.7.0_55"<br>
Java(TM) SE Runtime Environment (build 1.7.0_55-b13)<br>
Java HotSpot(TM) 64-Bit Server VM (build 24.55-b03, mixed mode)<br>
<br>
$ scala -version<br>
Scala code runner version 2.10.3 -- Copyright 2002-2013, LAMP/EPFL<br>
<br>
$ gradle --version<br>
<br>
------------------------------<u></u>------------------------------<br>
Gradle 1.12<br>
------------------------------<u></u>------------------------------<br>
<br>
Build time: 2014-04-29 09:24:31 UTC<br>
Build number: none<br>
Revision: a831fa866d46cbee94e61a09af15f9<u></u>dd95987421<br>
<br>
Groovy: 1.8.6<br>
Ant: Apache Ant(TM) version 1.9.3 compiled on December 23<br>
2013<br>
Ivy: 2.2.0<br>
JVM: 1.7.0_55 (Oracle Corporation 24.55-b03)<br>
OS: Linux 3.13.0-24-generic amd64<br>
<br>
<br>
<br>
On Mon, Dec 15, 2014 at 11:55 PM, Robert Elliot<br></div></div><span class="">
<<a href="mailto:rob@lidalia.org.uk" target="_blank">rob@lidalia.org.uk</a> <mailto:<a href="mailto:rob@lidalia.org.uk" target="_blank">rob@lidalia.org.uk</a>>> wrote:<br>
<br>
He's writing Scala - the Scala compiler needs all annotation<br>
classes on the compile time class path, unlike javac which<br>
doesn't mind them.<br>
<br>
> On 16 Dec 2014, at 06:24, Ceki Gülcü <<a href="mailto:ceki@qos.ch" target="_blank">ceki@qos.ch</a><br></span><div><div class="h5">
<mailto:<a href="mailto:ceki@qos.ch" target="_blank">ceki@qos.ch</a>>> wrote:<br>
><br>
><br>
> I am assuming it's a build time error (not runtime) and you<br>
are using gradle. Can you clean gradle cache?<br>
><br>
>> On 12/16/2014 7:22, Ceki Gülcü wrote:<br>
>> Hi Elliot,<br>
>><br>
>> We added the JSR 305 @Nonnull into ILoggerFactory interface and<br>
>> LoggerFactory class in version 1.7.8.<br>
>><br>
>> I have just verified that client code builds just fine without<br>
>> com.google.code.findbugs:<u></u>jsr305 being present on the class<br>
path.<br>
>><br>
>> Can you tell use more about your build environment. JDK<br>
version. Build<br>
>> tool etc.<br>
>><br>
>> Are you doing a clean build?<br>
>><br>
>> Cheers,<br>
>><br>
>> --<br>
>> Ceki<br>
>><br>
>>> On 12/15/2014 23:58, Elliot Huntington wrote:<br>
>>> slf4j-api version 1.7.8 was released to the maven central<br>
repository on<br>
>>> 2014-12-14, which was yesterday. Today one of my builds<br>
that depended on<br>
>>> slf4j-api with a version range from 1.7.5 -> 1.7.8 started<br>
to break. I'm<br>
>>> getting error messages like this:<br>
>>><br>
>>> Class javax.annotation.Nonnull not found - continuing with<br>
a stub.<br>
>>> Caught: java.lang.NullPointerException while parsing<br>
annotations in<br>
>>><br>
/home/username/.gradle/caches/<u></u>modules-2/files-2.1/org.slf4j/<u></u>slf4j-api/1.7.8/<u></u>40d4abec9e853fd9f17fb144f1e7c2<u></u>c5bab52af9/slf4j-api-1.7.8.<u></u>jar(org/slf4j/LoggerFactory.<u></u>class)<br>
>>><br>
>>> error while loading LoggerFactory, class file<br>
>>><br>
'/home/username/.gradle/<u></u>caches/modules-2/files-2.1/<u></u>org.slf4j/slf4j-api/1.7.8/<u></u>40d4abec9e853fd9f17fb144f1e7c2<u></u>c5bab52af9/slf4j-api-1.7.8.<u></u>jar(org/slf4j/LoggerFactory.<u></u>class)'<br>
>>><br>
>>> is broken<br>
>>> (class java.lang.RuntimeException/bad constant pool index:<br>
0 at pos:<br>
>>> 9496)<br>
>>><br>
/home/username/projects/1.0.5-<u></u>gradle/common/src/main/scala/<u></u>company/product/common/<u></u>LogHelper.scala:14:<br>
>>><br>
>>> value getLogger is not a member of object<br>
org.slf4j.LoggerFactory<br>
>>> lazy val logger = LoggerFactory.getLogger(this.<u></u>getClass)<br>
>>> ^<br>
>>><br>
>>> Has getLogger purposefully been removed from the slf4j-api<br>
version 1.7.8<br>
>>> or is it possible that the artifact uploaded to the maven<br>
central<br>
>>> repository is corrupted? This is a breaking change.<br>
>>><br>
>>> After excluding all transitive dependencies to slf4j-api<br>
from my project<br>
>>> and explicitly using version 1.7.7, my project builds fine<br>
again. What<br>
>>> happened in version 1.7.8 that was released to the maven<br>
central<br>
>>> repository yesterday?<br>
>>><br>
>>><br>
>>> ______________________________<u></u>_________________<br>
>>> slf4j-user mailing list<br></div></div>
>>> <a href="mailto:slf4j-user@qos.ch" target="_blank">slf4j-user@qos.ch</a> <mailto:<a href="mailto:slf4j-user@qos.ch" target="_blank">slf4j-user@qos.ch</a>><span class=""><br>
>>> <a href="http://mailman.qos.ch/mailman/listinfo/slf4j-user" target="_blank">http://mailman.qos.ch/mailman/<u></u>listinfo/slf4j-user</a><br>
>> ______________________________<u></u>_________________<br>
>> slf4j-user mailing list<br></span>
>> <a href="mailto:slf4j-user@qos.ch" target="_blank">slf4j-user@qos.ch</a> <mailto:<a href="mailto:slf4j-user@qos.ch" target="_blank">slf4j-user@qos.ch</a>><span class=""><br>
>> <a href="http://mailman.qos.ch/mailman/listinfo/slf4j-user" target="_blank">http://mailman.qos.ch/mailman/<u></u>listinfo/slf4j-user</a><br>
> ______________________________<u></u>_________________<br>
> slf4j-user mailing list<br></span>
> <a href="mailto:slf4j-user@qos.ch" target="_blank">slf4j-user@qos.ch</a> <mailto:<a href="mailto:slf4j-user@qos.ch" target="_blank">slf4j-user@qos.ch</a>><span class=""><br>
> <a href="http://mailman.qos.ch/mailman/listinfo/slf4j-user" target="_blank">http://mailman.qos.ch/mailman/<u></u>listinfo/slf4j-user</a><br>
______________________________<u></u>_________________<br>
slf4j-user mailing list<br></span>
<a href="mailto:slf4j-user@qos.ch" target="_blank">slf4j-user@qos.ch</a> <mailto:<a href="mailto:slf4j-user@qos.ch" target="_blank">slf4j-user@qos.ch</a>><span class=""><br>
<a href="http://mailman.qos.ch/mailman/listinfo/slf4j-user" target="_blank">http://mailman.qos.ch/mailman/<u></u>listinfo/slf4j-user</a><br>
<br>
<sscce.tgz>___________________<u></u>____________________________<br>
slf4j-user mailing list<br></span>
<a href="mailto:slf4j-user@qos.ch" target="_blank">slf4j-user@qos.ch</a> <mailto:<a href="mailto:slf4j-user@qos.ch" target="_blank">slf4j-user@qos.ch</a>><br>
<a href="http://mailman.qos.ch/mailman/listinfo/slf4j-user" target="_blank">http://mailman.qos.ch/mailman/<u></u>listinfo/slf4j-user</a><br>
</blockquote>
<br>
<br>
______________________________<u></u>_________________<br>
slf4j-user mailing list<br>
<a href="mailto:slf4j-user@qos.ch" target="_blank">slf4j-user@qos.ch</a> <mailto:<a href="mailto:slf4j-user@qos.ch" target="_blank">slf4j-user@qos.ch</a>><span class=""><br>
<a href="http://mailman.qos.ch/mailman/listinfo/slf4j-user" target="_blank">http://mailman.qos.ch/mailman/<u></u>listinfo/slf4j-user</a><br>
<br>
<br>
<br>
______________________________<u></u>_________________<br>
slf4j-user mailing list<br>
<a href="mailto:slf4j-user@qos.ch" target="_blank">slf4j-user@qos.ch</a><br>
<a href="http://mailman.qos.ch/mailman/listinfo/slf4j-user" target="_blank">http://mailman.qos.ch/mailman/<u></u>listinfo/slf4j-user</a><br>
<br>
</span></blockquote><div class="HOEnZb"><div class="h5">
______________________________<u></u>_________________<br>
slf4j-user mailing list<br>
<a href="mailto:slf4j-user@qos.ch" target="_blank">slf4j-user@qos.ch</a><br>
<a href="http://mailman.qos.ch/mailman/listinfo/slf4j-user" target="_blank">http://mailman.qos.ch/mailman/<u></u>listinfo/slf4j-user</a><br>
</div></div></blockquote></div></div>