เป็นไปได้ไหมที่จะใช้ Logback แทน Log4j ฉันได้แยกการพึ่งพา log4j ออกจากไฟล์เกรดโปรเจ็กต์ทั้งหมดของฉัน แต่เมื่อฉันสร้างโหนด log4j ยังคงถูกนำเข้ามาจาก Corda-core
ด้านล่างนี้เป็นวิธีที่ฉันแยกการขึ้นต่อกันในการไล่ระดับ
configurations.all {
exclude group: 'org.apache.logging.log4j', module: 'log4j-api'
exclude group: 'org.apache.logging.log4j', module: 'log4j-core'
exclude group: 'org.apache.logging.log4j', module: 'log4j-slf4j-impl'
exclude group: "org.slf4j", module: "jcl-over-slf4j"
exclude group: 'org.apache.logging.log4j', module: 'log4j-web'
}
ฉันเพิ่ม logback เป็นการพึ่งพา
compile group: 'ch.qos.logback', name: 'logback-classic', version: '1.2.3'
แต่หลังจากปรับใช้โหนดและเริ่มต้นใช้งานแล้ว ฉันเห็นว่าโหนดยังคงใช้โรงงานตัวบันทึก log4j
SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in [jar:file:/Users/daniel.newton/.capsule/apps/net.corda.node.Corda_3.1-corda/log4j-slf4j-impl-2.9.1.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/Users/daniel.newton/dev/projects/corda/build/nodes/party/cordapps/trade-input-cordapp-1.0.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/Users/daniel.newton/dev/projects/corda/build/nodes/party/cordapps/common-1.0.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/Users/daniel.newton/dev/projects/corda/build/nodes/party/cordapps/corda-1.0.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.
SLF4J: Actual binding is of type [org.apache.logging.slf4j.Log4jLoggerFactory]
บรรทัดบันทึกเหล่านี้แนะนำว่าไม่พบการเข้าสู่ระบบกลับด้วยซ้ำ
ข้อมูลเพิ่มเติมอีกประการหนึ่งก็คือ เมื่อฉันรันการทดสอบที่มีอยู่ในหนึ่งในโปรเจ็กต์เดียวกัน เนื่องจาก Cordapps ด้านล่างทำงานได้ดีและรับ Logback ได้สำเร็จ แต่การรันโหนดไม่สามารถทำได้
gradle dependencies
และไม่มีการพึ่งพา log4j ทุกที่ที่จะพบ แต่ log4j ยังคงถูกหยิบขึ้นมาในแต่ละครั้ง (ซึ่งฉันรู้ว่ามันยังอยู่ที่นั่นที่ไหนสักแห่ง) ดูเหมือนว่าnet.corda.node.Corda_3.1-corda/log4j-slf4j-impl-2.9.1.jar!
จะรวมมันไว้ด้วย ฉันได้ทำclean build
ไปแล้วด้วย - person Dan Newton   schedule 29.05.2018