Wie nutze ich SLF4J varargs, die sich im Play2.1-Framework anmelden?

8

SLF4J varargs auf die Protokollierungsaufrufe sind sehr nützlich in meiner Java-Arbeit

%Vor%

Ich versuche, dieses einfache Beispiel in Play 2.1 Framework / Scala zu machen, und ich stoße in den Compiler, der mich ablehnt.

%Vor%

Was ist das für ein Fehler und wie überwinde ich ihn, um mich an die SLF4J-API zu wenden? Wenn ich das nicht tun kann, wie kann ich das Play 2.1 Logging Framework nutzen, um an meinen Logging-Aufrufen teilzunehmen? Irgendwas stimmt nicht im Scala-Land.

    
Bob Kuhar 06.06.2013, 17:57
quelle

2 Antworten

6

Welche Version von SLF4J verwenden Sie? Wenn Sie zu 1.6.6 oder später zurückkehren können, können Sie dieses Problem in Zweideutigkeiten vermeiden. Diese beiden Signaturen sehen scala leider genau so aus und der Compiler scheint nicht zu unterscheiden, welchen Sie meinen. Der allgemeine Vorschlag ist, zu einer Version von SLF4J zurückzukehren (wenn auch nur für Sie möglich), wo diese überladene Methodenmehrdeutigkeit nicht existieren wird. Weitere Informationen finden Sie unter den folgenden Links:

Zypern

Ссылка

    
cmbaxter 06.06.2013, 18:29
quelle
1

Die "schnelle Lösung" dafür ist wie folgt:

Erzwinge nur, dass das letzte Argument den Typ Any hat und das Problem des Compilers löst (und etwas weniger Code macht ...)

%Vor%

Oder in Ihrem Fall:

%Vor%     
Techmag 10.09.2015 16:36
quelle

Tags und Links