我以前使用过这个,所以我不知道为什么这不起作用。考虑这段代码public class NioServer implements Runnable { private EventLoopGroup group; private ServerBootstrap b; public static final AttributeKey<Session> SESSION_KEY = new AttributeKey<>("SessionHandler.attr"); @Override public void run() { group = new NioEventLoopGroup(); b = new ServerBootstrap(); b.group(group) .channel(NioServerSocketChannel.class) .localAddress(435) .childOption(ChannelOption.SO_KEEPALIVE, true) .childOption(ChannelOption.TCP_NODELAY, true) .childHandler(new ChannelInitializer<SocketChannel>() { @Override protected void initChannel(SocketChannel ch) throws Exception { ch.pipeline().addLast("Session Handler", new SessionHandler()); } }); }}AttributeKey SESSION_KEY不想工作并给出错误: “无法为AttributeKey 推断类型参数,原因:无法推断 类型变量T(实际和形式参数列表的长度不同) 其中T是类型变量:T扩展了在类中声明的Object AttributeKey”我不明白...我错过了什么吗?对此没有其他问题,但是其他问题确实以这种方式成功使用了AttributeKey。眼镜:Netty 4.1.0-netty-all-4.1.0.Beta1.jarJDK 1.8更新:好的,因此我已将版本降级为4.0.21 Final,显然已弃用AttributeKey<>(""),但是我找不到关于此的任何进一步信息。有人知道4.1.0版本中的替代品吗?顺便说一下,它在4.0.21 Final中工作。 (adsbygoogle = window.adsbygoogle || []).push({}); 最佳答案 好的。引用用户“ Mics”: 简短答案:netty 4.1中没有AttributeKey(String),请使用 AttributeKey.valueOf(String)。附加信息: github.com/netty/netty/issues/1824感谢您的回答。 (adsbygoogle = window.adsbygoogle || []).push({});
10-07 16:17