Netbeans运行->;停止构建不会停止正在运行的java进程

Netbeans运行->;停止构建不会停止正在运行的java进程,netbeans,netty,Netbeans,Netty,我正在Mac OS X Lion 10.7.3上使用Netbeans 7.1.2 我有一个简单的java服务器(使用netty)项目,在我构建并运行该项目之后,通过run->stop build尝试停止运行,但它不会终止java服务器进程 例如,我的服务器应用程序使用端口8080,即使在我停止从netbeans运行后,端口8080仍在使用,并且应用程序仍在运行。我必须从活动监视器手动终止java进程 结束由Netbeans启动的正在运行的应用程序的正确过程是什么 非常感谢你的帮助。感谢您的高级支

我正在Mac OS X Lion 10.7.3上使用Netbeans 7.1.2

我有一个简单的java服务器(使用netty)项目,在我构建并运行该项目之后,通过run->stop build尝试停止运行,但它不会终止java服务器进程

例如,我的服务器应用程序使用端口8080,即使在我停止从netbeans运行后,端口8080仍在使用,并且应用程序仍在运行。我必须从活动监视器手动终止java进程

结束由Netbeans启动的正在运行的应用程序的正确过程是什么


非常感谢你的帮助。感谢您的高级支持。

请查看文档:。向下滚动至第9节。正在关闭应用程序

您的主应用程序看起来像:

package org.jboss.netty.example.time;
public class TimeServer {
    static final ChannelGroup allChannels = new DefaultChannelGroup("time-server"(35));
    public static void main(String[] args) throws Exception {
        ...
        ChannelFactory factory = ...;
        ServerBootstrap bootstrap = ...;
        ...
        Channel channel = bootstrap.bind(...);
        allChannels.add(channel);

        ...

        // Shutdown code
        ChannelGroupFuture future = allChannels.close();
        future.awaitUninterruptibly();
        factory.releaseExternalResources();
    }
}
您需要:

public void channelOpen(ChannelHandlerContext ctx, ChannelStateEvent e) {
    TimeServer.allChannels.add(e.getChannel());
}
你必须: 1.将所有频道存储在
频道组中
2.关闭时,关闭所有通道并释放资源


希望这有帮助。

请查看文档:。向下滚动至第9节。正在关闭应用程序

您的主应用程序看起来像:

package org.jboss.netty.example.time;
public class TimeServer {
    static final ChannelGroup allChannels = new DefaultChannelGroup("time-server"(35));
    public static void main(String[] args) throws Exception {
        ...
        ChannelFactory factory = ...;
        ServerBootstrap bootstrap = ...;
        ...
        Channel channel = bootstrap.bind(...);
        allChannels.add(channel);

        ...

        // Shutdown code
        ChannelGroupFuture future = allChannels.close();
        future.awaitUninterruptibly();
        factory.releaseExternalResources();
    }
}
您需要:

public void channelOpen(ChannelHandlerContext ctx, ChannelStateEvent e) {
    TimeServer.allChannels.add(e.getChannel());
}
你必须: 1.将所有频道存储在
频道组中
2.关闭时,关闭所有通道并释放资源


希望这能有所帮助。

我只是在使用netty示例(org.jboss.netty.example.http.snoop)中给出的HttpSnoopServer。我在服务器处理程序中看到以下代码。ChannelFuture-future=e.getChannel().write(响应);//写操作完成后,关闭非保持活动连接。如果(!keepAlive){future.addListener(ChannelFutureListener.CLOSE);}`它不是与您在那里指定的类似吗?我只是在使用netty示例(org.jboss.netty.example.http.snoop)中给出的HttpSnoopServer。我在服务器处理程序中看到以下代码。ChannelFuture-future=e.getChannel().write(响应);//写操作完成后,关闭非保持活动连接。如果(!keepAlive){future.addListener(ChannelFutureListener.CLOSE);}`它与您在那里指定的不一样吗?