2013-04-27 25 views
0

我使用STS,它是一個春天的web項目。關於eclipse和maven的奇怪事情,以及eclipse的自動生成

當我運行行家手動構建,示出了:

SLF4J:無法加載類 「org.slf4j.impl.StaticLoggerBinder」。

但這個項目仍然可以自動構建和部署到Tomcat

如此做Eclipse中使用Maven來構建我的項目,當我保存文件,並使用自動建立

+0

您的spring web項目有何更新?我的回答對你有幫助嗎? – 2013-05-03 20:39:05

回答

1

首先。關於依賴關係。

如果您忘記添加所需的依賴項,我將覆蓋此方面。

爲了增加SLF4J你必須把ONE只有ONE在你的pom.xml這些依賴關係。這取決於您選擇使用的實施方式。您在pom.xml中添加的每個依賴項都會自動添加到類路徑中。如果以下依賴項之一由另一個依賴項提供,則可以省略它。不要忘記,即使依賴關係是由其他依賴項提供的,也只能包含一個。請注意,我從依賴關係中省略了版本。使用最新的可用。

<dependency> 
    <groupId>ch.qos.logback</groupId> 
    <artifactId>logback-classic</artifactId> 
    <version></version> 
</dependency> 
<dependency> 
    <groupId>org.slf4j</groupId> 
    <artifactId>slf4j-simple</artifactId> 
    <version></version> 
    <scope>compile</scope> 
</dependency> 
<dependency> 
    <groupId>org.slf4j</groupId> 
    <artifactId>slf4j-log4j12</artifactId> 
    <version></version> 
    <scope>compile</scope> 
</dependency> 
<dependency> 
    <groupId>org.slf4j</groupId> 
    <artifactId>slf4j-jdk14</artifactId> 
    <version></version> 
    <scope>compile</scope> 
</dependency> 

關於煩人的錯誤

如果只有上面的一個依賴後,你仍然可以獲得SLF4J:無法加載類「組織.slf4j.impl.StaticLoggerBinder」。那麼你正面臨着m2e的一個bug。

Eclipse的財富和靛藍,使用捆綁行家版本(M2E)時,不抑制消息SLF4J:無法加載類「org.slf4j.impl.StaticLoggerBinder」。此行爲在m2e 1.1.0.20120530-0009及之後的版本中提供。

雖然這表示爲錯誤,您的日誌將正常保存。突出顯示的錯誤仍然存​​在,直到修復此錯誤。更多關於m2e support site的信息。

當前可用的解決方案是使用外部maven版本而不是捆綁版本的Eclipse。你可以在下面的問題中找到關於這個解決方案和更多關於這個bug的細節,我認爲它描述了你面臨的同樣的問題。

SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder". error

0

您必須確保至少有約束力執行slf4j是在你的類路徑中,即:

<dependency> 
    <groupId>org.slf4j</groupId> 
    <artifactId>slf4j-log4j12</artifactId> 
    <version>1.7.5</version> 
</dependency> 
0

您需要添加的依賴實現SLF4J的對你的pom.xml,如SLF4J-NOP。