2 回答

TA貢獻(xiàn)1770條經(jīng)驗(yàn) 獲得超3個(gè)贊
你的類IncomingPacketHandler
不是由 Spring 管理的,而是由你親自創(chuàng)建的:
ChannelPipeline p = ch.pipeline(); p.addLast(new IncomingPacketHandler());
因此,即使您添加一百萬個(gè) Spring 注釋,它們也不會執(zhí)行任何操作。您想要的是讓 Spring 創(chuàng)建此處理程序,并將 Spring 創(chuàng)建的處理程序作為參數(shù)傳遞給p.addLast

TA貢獻(xiàn)1815條經(jīng)驗(yàn) 獲得超13個(gè)贊
該類IncomingPacketHandler是手動(dòng)創(chuàng)建的,而不是由 Spring 創(chuàng)建的,因此bean不可用。
添加@Component到IncomingPacketHandler類:
...
import org.springframework.stereotype.Component;
@Component
public class IncomingPacketHandler extends
...
然后在UDPServer.java:
...
import org.springframework.beans.factory.annotation.Autowired;
@Component
public class UDPServer {
@Autowired
private IncomingPacketHandler incomingPacketHandler;
...
添加回答
舉報(bào)