0

我已经在端口 8080 上成功部署了应用程序。在取消部署并杀死所有进程“java”并清理文件夹:“domains/domain1/osgi-cache/felix”和“domains/domain1/applications/”之后,我尝试重新部署应用程序。

发生端口被占用。我无法使用 netstat 找到该端口(就像许多其他帖子中建议的那样),所以我猜端口应该可用。

我设法在不同的端口(9090)上部署。我再次取消部署并执行了其他操作,例如杀死和停止域......它发生端口仍然被占用,我现在无法在端口 8080 和 9090 上部署应用程序。

我正在使用 glassfish 4.1.2 和 Windows。任何人都有想法我能做更多吗?

我还在 etc/host 下添加了我的主机名。

4

2 回答 2

1

从您帖子的描述中,听起来您已经尝试在您的 Windows 系统上遵循一些针对 Linux 的说明。由于您设法在端口 9090 上启动 GlassFish,这表明主机名问题不会影响您。事后您无法在端口 9090 上启动 GlassFish 的事实表明您没有正确关闭 GlassFish。

在 Windows 上,如果所有 Java 进程由其他用户启动,则并非总是可以查看它们。因此,如果您将 GlassFish 作为 Windows 服务安装,则 Windows 系统用户将启动 GlassFish,Java 进程对您不可见。

验证 GlassFish 是否仍在运行的一个好方法是在浏览器中访问端点,在您的情况下为http://localhost:9090。如果您的应用程序在那里,那么它的主页将显示,否则 GlassFish 将提供 404,看起来很像这样:

404页面截图

如果您设法在浏览器中获得响应,那么您将确定 GlassFish 仍在运行。

于 2018-07-27T11:50:25.777 回答
0

实际上,我没有找到为什么端口被占用的答案。但是如果其他人发现了类似的问题,这个重新部署过程对我有用: 1:转到 glassfish 的管理面板(默认情况下:4848)。选择应用程序并单击取消部署 2:使用控制台停止域(asadmin stop-domain domain1) 3:使用控制台启动域(asadmin start-domain domain1) 4:进入管理面板(默认为:4848),部署应用程序。

此过程对我有用,而不是在管理面板上单击“重新部署”。

玻璃鱼和窗户...

于 2018-08-02T11:47:02.000 回答