已在银河麒麟系统中成功配置java环境但未部署glassfish服务器,将导致java ee应用无法启动或功能受限;需通过openjdk+手动部署、kylin appstore图形化安装、systemd服务配置或验证ee组件等方法完成glassfish部署。

如果您已在银河麒麟系统中成功配置Java环境,但尚未部署GlassFish服务器以支撑Java EE应用运行,则可能因缺少兼容的Java EE容器而导致Web应用无法启动或功能受限。以下是多种可行的安装与配置方法:
一、使用OpenJDK + 手动部署GlassFish 6.2.5(推荐适配麒麟OS)
该方法适用于需精确控制GlassFish版本及运行参数的场景,依赖已配置好的JAVA_HOME,且不依赖系统包管理器,兼容x86_64与ARM64架构。
1、确认Java环境已就绪:执行 java -version 与 echo $JAVA_HOME,输出应为OpenJDK 11或17,并指向有效路径。
2、创建专用部署目录:执行 sudo mkdir -p /opt/glassfish,并赋予当前用户写权限:sudo chown $USER:$USER /opt/glassfish。
3、下载GlassFish 6.2.5二进制包(Eclipse Foundation官方发布):执行 wget https://download.eclipse.org/ee4j/glassfish/glassfish-6.2.5.zip。
4、解压至目标目录:执行 unzip glassfish-6.2.5.zip -d /opt/glassfish/,解压后主目录为 /opt/glassfish/glassfish6。
5、设置执行权限:进入bin目录并授权:cd /opt/glassfish/glassfish6/bin && chmod +x *.sh。
6、启动默认域(domain1):执行 ./asadmin start-domain,首次启动将自动初始化配置。
二、通过Kylin AppStore图形化安装(仅限桌面版V10 SP1及以上)
该方式面向非命令行熟练用户,利用麒麟OS内置的应用商店完成GlassFish容器的一键部署,底层仍调用适配的OpenJDK 11运行时。
1、点击左下角“开始菜单”,打开麒麟软件商店。
2、在搜索栏输入glassfish,筛选“服务器”分类,找到名称为GlassFish Java EE Server的应用条目(发布者:Kylin Community)。
3、点击“安装”,系统将自动下载并校验SHA256签名,安装过程包含JAVA_HOME检测与依赖检查。
4、安装完成后,在“所有应用”中找到GlassFish Manager图标并启动,界面将显示域状态、端口映射及快速启停按钮。
5、首次运行时,Manager会提示设置管理员密码;若跳过,将启用默认凭证:admin / admin(建议立即修改)。
三、构建systemd服务实现开机自启(生产环境必需)
此方法确保GlassFish作为系统级服务稳定运行,避免用户会话退出导致服务中断,适用于服务器版或长期驻留部署场景。
1、创建systemd服务文件:执行 sudo vim /etc/systemd/system/glassfish.service。
2、填入以下内容(请严格按格式,注意路径与用户替换):
[Unit]
Description=GlassFish Application Server
After=network.target
[Service]
Type=simple
User=kylinuser
Group=kylinuser
Environment=JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64
ExecStart=/opt/glassfish/glassfish6/bin/asadmin start-domain
ExecStop=/opt/glassfish/glassfish6/bin/asadmin stop-domain
Restart=on-failure
RestartSec=10
[Install]
WantedBy=multi-user.target
3、重载服务配置:执行 sudo systemctl daemon-reload。
4、启用开机自启:执行 sudo systemctl enable glassfish.service。
5、立即启动服务:执行 sudo systemctl start glassfish.service,随后用 sudo systemctl status glassfish 查看运行状态。
四、验证GlassFish Java EE功能可用性
部署完成后,必须验证核心Java EE组件(如Servlet、JSP、JDBC、JNDI)是否正常加载,防止因麒麟OS SELinux策略或库缺失导致隐性失败。
1、访问管理控制台:在浏览器中打开 https://localhost:4848(首次访问将提示证书警告,可忽略并继续)。
2、登录后进入“Applications” → “Deploy”,上传一个标准WAR包(例如官方sample:hello.war),勾选“Enabled”与“Context Root: /hello”。
3、部署成功后,访问 http://localhost:8080/hello,应返回响应页面且无500错误。
4、终端验证EE容器健康:执行 /opt/glassfish/glassfish6/bin/asadmin list-components,输出中应包含 jakarta.servlet、jakarta.persistence 等关键模块。
Java免费学习笔记:立即使用
解锁 Java 大师之旅:从入门到精通的终极指南











