当前位置: 代码迷 >> java >> Glassfish在背景中运行
  详细解决方案

Glassfish在背景中运行

热度:34   发布时间:2023-08-04 09:17:32.0

Glassfish服务器在后台运行,我无法停止,启动或重新启动该过程。 我知道,重新启动系统将完成这项工作。 是否还有其他流程可以阻止流程?

这是详细信息:

  1. 当我试图停止时,它说它是domain1没有运行:

    C:\\ Server \\ glassfish4 \\ glassfish \\ bin> asadmin stop-domain
    CLI306:警告 - 位于C:\\ Server \\ glassfish4 \\ glassfish \\ domains \\ domain1的服务器未运行。
    命令stop-domain成功执行。

  2. 但是,我可以在Web浏览器中为打开管理控制台

  3. 当我尝试启动或重新启动时抛出错误:

    C:\\ Server \\ glassfish4 \\ glassfish \\ bin> asadmin start-domain有一个进程已经使用管理端口4848 - 它可能是GlassFish服务器的另一个实例。 命令start-domain失败。

    C:\\ Server \\ glassfish4 \\ glassfish \\ bin> asadmin restart-domain Server未运行,将尝试启动它...有一个进程已经使用管理端口4848 - 它可能是GlassFish服务器的另一个实例。 命令restart-domain失败。

  4. 我尝试使用netstat -a -n -o命令为端口4848找到PID。我有两个条目,但不是localhost id:

     TCP 0.0.0.0:4848 0.0.0.0:0 LISTENING 9116 TCP [::]:4848 [::]:0 LISTENING 9116 

尝试这个

taskkill /F /PID 9116

还可以找到保存port 8080并终止它们的进程的PID。 (如果以上解决方案不起作用)

netstat -aon | find "LISTENING" | find ":8080"
taskkill /F /PID process_id_here

如果你使用的是Mac OS,你应该打开终端并写下面的内容:

jps

(jps - 是帮助您查看GlassFish此过程的PID的命令)在我的情况下,我有以下信息:

MBP-Dmytro:~ melnychukdv$ jps
4004 ASMain
4500 Jps

之后我们就杀了这个PID(在我的例子中它是4004):

sudo kill -4004 {PID}

要么

sudo kill 4004 {PID}

就这样。