我正與一個由10多名Java開發人員組成的團隊一起工作在一個Web應用程序上。這是一個很大的項目(2歲),我們從昨晚開始討論一個問題:某些bean(2個bean)在使用時會導致NullPointerException(如果IoC不再工作)。Spring依賴注入停止工作
事情是,一切工作都很好,兩天前,我已經閱讀了這兩天的每一次提交,但Spring Confugration文件沒有變化。
我知道有時如果你通過Spring動態注入一個bean並通過新的操作數實例化它,它會給出一個NPE,但是在項目中沒有這個標誌。
所有的開發人員在他們的本地機器上都沒有這個問題,但是在CI服務器上,它工作正常,然後停止,直到我們重新啓動機器(而不是服務器)。有沒有人有一個想法如何處理這個問題?服務器啓動完全不顯示任何錯誤。
UPDATE:
服務器上下文初始化表示絕對沒有錯誤(也沒有警告),併成功消息結束。
我檢查了所有對bean setters的調用:沒有使用。
bean通過配置文件接收,不帶@Autowired。
我已經爲新操作數搜索了整個項目,花了將近兩個小時來檢查每個操作數,但是沒有bean與新的操作數實例化。
某處某些代碼將您的成員設置爲null(「它工作正常,然後停止。」)。你確定你沒有在代碼中的任何地方調用setX()嗎? –
你能爲此添加一些細節嗎?堆棧跟蹤代碼片段或日誌如果您可以打開彈出調試日誌記錄 – mzzzzb
增加日誌級別並向我們顯示一些相關的日誌和彈簧配置文件。檢查循環依賴。 –