我對於tomcat部署使用apply plugin: 'com.bmuschko.tomcat'
,我們通常使用maven,但是這次我們更改爲gradle,在幾次嘗試使用intellijidea作爲我的IDE後,我無法運行tomcatRun
任務,有一個奇怪的錯誤說。Gradle + Tomcat插件+ slf4j
Failed to instantiate SLF4J LoggerFactory
Reported exception:
java.lang.NoClassDefFoundError: org/slf4j/spi/LoggerFactoryBinder
at java.lang.ClassLoader.defineClass1(Native Method)
....
....
Caused by: java.lang.IllegalStateException: org.slf4j.LoggerFactory could not be successfully initialized.
at org.slf4j.LoggerFactory.getILoggerFactory(LoggerFactory.java:354)
at org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:294)
我已經有這個配置在gradle.build
log4jVersion = '1.2.17'
slf4jVersion = '1.7.12'
compile "log4j:log4j:$log4jVersion"
compile "org.slf4j:slf4j-log4j12:$slf4jVersion"
我使用也只是gradle這個和運行gradle tomcatRun
和相同的情況發生,gradle這個版本我想是2.6和2.10與相同的結果。
似乎戰爭文件正在創建與它的庫,但使用插件和gradle使奇怪的組合,這裏的任何亮點? 另外一個問題是,如果在其他地方還有其他插件for gradle-tomcat?
忘了補充,我使用tomcatVersion = '6.0.44'
和java7
運行Tomcat其實是我在過去是如何解決的,需要在gradle這個版本降級到2.3這是一個但是我使用了STS,因爲我的一些隊友在他們的計算機上沒有問題,轉而使用舊的gradle版本是一種解決方法,但我認爲你的回答是正確的,謝謝。 – Koitoer