Cara mengaktifkan login di org.slf4j untuk versi: '2.0.0-alpha1' di boot Spring

11

Saya telah menggunakan logging SLF4J untuk mencetak semua log. Saya menggunakan versi terbaru dari org.slf4j.

implementasi 'org.slf4j: slf4j-api: 2.0.0-alpha1'

implementasi 'org.slf4j: log4j-over-slf4j: 2.0.0-alpha1'

Tapi saya mendapatkan kesalahan berikut dan juga tidak ada log yang dicetak.

SLF4J: No SLF4J providers were found.
SLF4J: Defaulting to no-operation (NOP) logger implementation
SLF4J: See http://www.slf4j.org/codes.html#noProviders for further details.
SLF4J: Class path contains SLF4J bindings targeting slf4j-api versions prior to 1.8.
SLF4J: Ignoring binding found at [jar:file:/home/user/.gradle/caches/modules-2/files-2.1/ch.qos.logback/logback-classic/1.2.3/7c4f3c474fb2c041d8028740440937705ebb473a/logback-classic-1.2.3.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: See http://www.slf4j.org/codes.html#ignoredBindings for an explanation.

Log berfungsi dengan baik dengan versi yang lebih lama (1.7.25). Apakah ada sesuatu yang perlu ditambahkan atau dikonfigurasi pada proyek sehingga log ini dapat dicetak

r123
sumber
Bisakah Anda membagikan file POM Anda di sini? Ini akan membantu dalam memahami dependensi apa yang digunakan
user2281204

Jawaban:

1

Ini akan mencetak pesan menambahkan slf4j-log4j12 bukan slf4j-api

Hapus yang berikut ini

implementation 'org.slf4j:slf4j-api:2.0.0-alpha1'
implementation 'org.slf4j:log4j-over-slf4j:2.0.0-alpha1'

Menambahkan

implementation group: 'org.slf4j', name: 'slf4j-log4j12', version: '+'
SST
sumber
0

Ini karena slf4j adalah abstraksi yang perlu diikat dengan perpustakaan lain yang sudah ada sebelumnya. Oleh karena itu, jika Anda hanya menggunakan slf4j untuk mencetak log, itu tidak akan berfungsi karena tidak memiliki pengaturan pada tingkat logging dll. Tautan ini memberikan beberapa informasi yang sama.

Juga, versi baru Spring Boot memiliki integrasi standar dengan slf4j untuk versi 1.7.9

pengguna2281204
sumber
0

Anda tidak perlu mengimpor log ketergantungan ketika menggunakan Musim Semi Boot 2.x . Yang diperlukan hanyalah mengimpor Spring Boot Starter , yang kemungkinan besar sudah Anda lakukan. Misalnya spring-boot-starter-web, yang tergantung pada spring-boot-starter-logging, yang menarikspring-jcl modul yang diperlukan untuk masuk dengan Spring Framework.

Saat menggunakan permulaan, Logback digunakan untuk logging secara default, Log4j tidak diperlukan.

Hapus saja semua referensi slf4jdari file build Anda. Di sini adalah bagaimana referensi untuk Spring Boot Web Starter terlihat dalam file build.gradle.

compile("org.springframework.boot:spring-boot-starter-web")
dbaltor
sumber