![](/img/trans.png)
[英]JUnit and Maven build fails in eclipse with java.lang.NoSuchFieldError: address?
[英]java.lang.NoSuchFieldError: NO_FORMAT when tunning maven surefire junit tests
嘗試從Maven(Maven surefire插件)運行junit測試時,出現以下錯誤:
java.lang.NoSuchFieldError: NO_FORMAT
該錯誤似乎來自對我的log4j記錄器的任何調用。 因此,當我有一個帶有log4j類變量log
類時,例如:
public class SomeClass {
private Logger log = Logger.getLogger(SomeClass.class);
....
}
然后致電
log.info(String msg);
導致上述錯誤。 我嘗試確保在運行junit測試時已設置基本配置,例如
@Before
public void setup() {
BasicConfigurator.configure();
someclass = new SomeClass();
}
但這不能解決這個問題。 刪除所有log
調用可以解決問題,但這不是一個很好的解決方案。
知道為什么會出現此問題嗎? 非常感謝。
嘗試升級/降級您的log4j依賴項。
我不確定這是否有幫助,但是我將嘗試檢查是否在類路徑中有多個Log4j依賴項,即我將運行mvn dependency:tree
並可能將其輸出到臨時文件,例如mvn dependency:tree > deps.txt
然后分析我的依賴關系。
對我來說,問題在於我還激活了一個Arquillian個人資料。 確保只激活正確的一個以運行Maven測試:-)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.