繁体   English   中英

Gradle + Tomcat插件+ slf4j

[英]Gradle + Tomcat plugin + slf4j

我正在使用apply plugin: 'com.bmuschko.tomcat'于tomcat部署apply plugin: 'com.bmuschko.tomcat' ,我们通常使用maven,但是这次我们更改为gradle,在多次尝试使用intellijidea作为我的IDE之后,我无法运行tomcatRun任务,有一个奇怪的错误说。

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会产生奇怪的组合,这里有什么亮点吗? 另外还有一个问题是在其他地方是否还有gradle-tomcat的另一个插件?

忘了添加,我正在使用tomcatVersion = '6.0.44'和java7

我有同样的问题,并使用gradle verison 2.3使用gradle wrapper解决了它。 参见https://docs.gradle.org/current/userguide/gradle_wrapper.html

添加gradle包装

gradle wrapper --gradle-version 2.3

然后用运行tomcat

gradlew tomcatRun

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM