由于“端口冲突”GlassFish无法启动,但没有使用该端口 - GlassFish出现了什么问题?
我使用Eclipse和GlassFish 3.1在Mac(Lion)上开发。 GlassFish使用端口8080和4848.突然,当我尝试启动GlassFish时,它告诉我它不能,因为存在端口冲突。由于“端口冲突”GlassFish无法启动,但没有使用该端口 - GlassFish出现了什么问题?
据我所知,没有什么是使用该端口。我关闭一切并重新启动Mac,并且在运行GlassFish时仍然出现相同的错误。我卸载GlassFish,删除所有目录,重新启动我的机器,重新安装GlassFish和同样的问题。
我在我的Mac上创建了一个新的测试用户,以我身份登录,以他的身份登录,在该用户帐户下安装GlassFish,并且在那里运行良好。
这就像我的用户帐户中有东西让我的Mac或GlassFish认为端口正在使用中。
有谁知道我可以如何解决这个问题?我讨厌在我的Mac上创建一个新帐户并将所有数据传输到那里的想法。看起来像一个过度的解决方案。
任何想法?
罗布
UPDATE:做一个 “lsof的-i:8080” 显示我:
$ lsof -i :8080
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
launchd 158 stephen 8u IPv4 0xffffff8014945fa0 0t0 TCP *:http-alt (LISTEN)
launchd 158 stephen 10u IPv6 0xffffff8014941240 0t0 TCP *:http-alt (LISTEN)
printerAg 232 stephen 5u IPv4 0xffffff8014945fa0 0t0 TCP *:http-alt (LISTEN)
printerAg 232 stephen 6u IPv6 0xffffff8014941240 0t0 TCP *:http-alt (LISTEN)
我想这意味着有8080端口上的东西吗?如果是这样,那么launchd和printerAg是什么?他们为什么在这个用户帐户上运行,但不是在我创建的新用户帐户上运行?谢谢!
检查谁正在使用的端口:
lsof -i :8080 -i :4848
嗨罗布,冉命令,似乎有东西在运行(见我添加到问题的更新)。任何想法接下来我应该做什么? –
launchd是主要的守护进程运行系统。您已安装了一些在8080上侦听的软件。请参阅http://developer.apple.com/library/mac/#documentation/MacOSX/Conceptual/BPSystemStartup/Chapters/CreatingLaunchdJobs.html –
看起来像我找到了它。该任务被称为“printerAg”,所以我卸载/删除了所有惠普和打印机相关的实用程序,它看起来像使用8080的任务现在消失了。谢谢! –
您还可以通过以下命令,从8080更改HP打印机的端口18089:
sudo sed -i "" -e "s|8080|18089|g" ~/Library/LaunchAgents/com.hp.printerAgent.plist
然后重新启动您的系统。
您究竟是如何检查端口是否在使用? –
我跑了一些我的UNIX知识渊博的同事建议的命令,但显然我没有正确执行。看到问题中的更新,似乎有什么。任何想法是什么? –