Kylin(麒麟)V10系统安装WebLogic 12C

Kylin(麒麟)V10系统安装WebLogic 12C

目录

前言

一、JDK环境

二、安装WebLogic

1. 下载安装包

2. 开始安装


前言

先说下服务器的情况:我的环境是国产化环境,所以和之前的X86架构有些区别之处。

CPU是华为鲲鹏(Kunpeng)ARM64(aarch64)指令集架构,所以操作系统是:Kylin Linux Advanced Server V10 (ARM64) 。

由此我们在安装其他软件的时候也要注意这一点了,需要下载安装ARM64(aarch64)指令集架构的软件了,不然会会报指令集不符的相关错误提示。


一、JDK环境

Kylin V10系统默认安装匹配的是OpenJDK。

这里我安装WebLogic 12C时使用的是Oracle JDK。当然OpenJDK应该也是可以的。

JDK要求:WebLogic 12.2.1.4 需要 JDK 8(1.8.0_131及以上版本)

下载地址:https://www.oracle.com/java/technologies/javase/javase8u211-later-archive-downloads.html

-- 下载后安装jdk-8u211-linux-arm64-vfp-hflt.tar.gz

在你自建的linux用户下新建java文件,将下载的文件上传到新建的java文件夹下,然后在java文件夹下执行:tar zvxf  jdk-8u211-linux-arm64-vfp-hflt.tar.gz(注意看是否需要root用户权限执行)

-- 配置环境变量

我这里配置普通用户级的JDK环境,不影响root下的全局JDK环境。

su - testuser(自建用户),编辑~/.bashrc文件。

vi ~/.bashrc 后的配置内容:

#取消系统默认JDK环境变量
unset JAVA_HOME
unset JRE_HOME
unset CLASSPATH

#配置新JDK环境变量(优先级高于默认JDK了)
export JAVA_HOME=/home/testuser/java/jdk1.8.0_211
export JRE_HOME=$JAVA_HOME/jre
export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH  #新JDK的bin目录放在最前面
export JAVA_HOME JRE_HOME CLASSPATH PATH

保存退出后执行:
source ~/.bashrc #使文件生效

二、安装WebLogic

1. 下载安装包

AI介绍:

根据Oracle官方认证,WebLogic 12.2.1.4+已正式支持:
Kylin Linux Advanced Server V10 (ARM64/x86-64) 

Go to the Oracle Technology Network (OTN) website: (WebLogic 12.2.1.4+下载)
https://www.oracle.com/middleware/technologies/weblogic-server-downloads.html

让我总结一下可能的来源:
Oracle OTN(免费用于开发,需要帐户)
Oracle支持(适用于签订支持合同的客户)
Oracle电子交付(面向授权客户)
Docker Hub(用于使用Docker容器进行开发)

2. 开始安装

-- 系统架构确认

uname -m
# Kylin V10有x86_64和aarch64架构
# 确保下载对应架构的WebLogic安装包

--依赖包安装

yum install -y libXext libXrender libXtst glibc-devel binutils gcc make elfutils-libelf-devel libaio

--内核参数调整(可先跳过,我跳过)

# 修改/etc/sysctl.conf增加参数
fs.file-max = 65536
kernel.shmmax = 4294967295

--安装界面乱码问题处理(可先跳过,我跳过)

export LANG=en_US.UTF-8

--创建组,用户,安装目录,目录拥有者授权

groupadd gstu
useradd -g gstu testuser
passwd testuser(给testuser设置密码)
mkdir -p /home/testuser/weblogic/Oracle
chown -R testuser:gstu /home/testuser

切换到你新建的用户su - testuser

1. 上传fmw_12.2.1.4.0_wls_lite_generic_ARM_OCI.jar到/home/testuser/weblogic目录

2. 创建响应文件 (静默安装)

vi wls_install.rsp  --添加以下内容

[ENGINE]
Response File Version=1.0.0.0.0
[GENERIC]
ORACLE_HOME=/home/testuser/weblogic/Oracle
INSTALL_TYPE=WebLogic Server
DECLINE_SECURITY_UPDATES=true
SECURITY_UPDATES_VIA_MYORACLESUPPORT=false

说明:
ORACLE_HOME=/home/testuser/weblogic/Oracle--这个配置最后一层Oracle目录不能提前建立好,安装时候会自动创建。否者会安装报错。

3. 执行静默安装(注:wls_install.rsp和oraInst.loc文件执行时,指定全路径)

说明:
-ignoreSysPrereqs:跳过 ARM 架构检查 (因官方可能未正式认证)
安装日志路径:/opt/oracle/oraInventory/logs/install*.log

安装过程中要求创建 产品清单位置指针文件,你可以按照说明在/etc目录上创建(root权限),也可以自己在合适的地方创建。
本人是在自己创建的用户下创建的,位置和wls_install.rsp这个文件一致。在/home/testuser/weblogic目录下。最好是在执行 静默安装 前一并设置好了。在执行安装
vi oraInst.loc --编辑产品清单位置指针文件,添加以下内容

inventory_loc=/home/testuser/weblogic/oraInventory
inst_group=gstu
说明:
inventory_loc#产品目录清单
inst_group#用户组名称

执行静默安装命令:

java -jar fmw_12.2.1.4.0_wls_lite_generic_ARM_OCI.jar -silent -responseFile /home/testuser/weblogic/wls_install.rsp -ignoreSysPrereqs -invPtrLoc /home/testuser/weblogic/oraInst.loc

说明:
安装过程中出现  检查交换空间:swap, 某些系统先决条件检查失败。必须在满足这些要求后才能继续。 处理方式如下:快速创建swap(无需分区)

free -m 先查看swap空间大小
--切换到root用户:sudo -i 
--执行分配1G:fallocate -l 1G /swapfile

--如果不行则使用:
dd if=/dev/zero of=/swapfile bs=1M count=1024
chmod 600 /swapfile #安全授权
mkswap /swapfile #格式化为swap
swapon /swapfile #启用swap

--开机自动挂载:echo '/swapfile swap swap defaults 0 0' >> /etc/fstab #>>是将内容追加到/etc/fstab文件后面,不覆盖前内容
--验证:free -m

4. 配置环境变量

vi ~/.bashrc --编辑用户环境变量文件,添加下面内容

export ORACLE_HOME=/home/testuser/weblogic/Oracle
export PATH=$ORACLE_HOME/oracle_common/common/bin:$PATH

保存退出后执行:
source ~/.bashrc #使文件生效

5. 创建域 (Domain)

创建Python脚本(我脚本的创建位置:$ORACLE_HOME/oracle_common/common/bin下),

vi create_domain.py --添加下面内容

#readTemplate('/home/testuser/weblogic/Oracle/wlserver/common/templates/wls/wls.jar')
readTemplateForUpdate('/home/testuser/weblogic/Oracle/wlserver/common/templates/wls/wls.jar') 
cd('Servers/AdminServer')
set('ListenAddress','')
set('ListenPort',7001)
cd('/')
cd('Security/base_domain/User/weblogic')
cmo.setPassword('********')
setOption('OverwriteDomain', 'true')
writeDomain('/home/testuser/weblogic/Oracle/Middleware/user_projects/domains/base_domain')
closeTemplate()
exit()

Python脚本代码说明:
readTemplateForUpdate() --已更新模式加载模板并配置/修改域。读取weblogic的基础模板wls.jar文件的路径,根据你自己的安装目录更改。
cd('Servers/') --切换到WLST的配置路径到Servers/AdminServer,用于修改管理服务器(AdminServer)的属性
set('ListenAddress','') --设置AdminServer的监听地址为空,表示会监听该主机的所有网络接口,访问其任意IP都行。
cd('/') --回到WLST的根配置路径,用于切换到其他配置节点。
cd('Security/base_domain/User/weblogic') --切换到base_domain域下的weblogic用户安全配置路径,准备修改该用户(weblogic)的密码。
setOption('OverwriteDomain', 'true') --true允许覆盖已存在的base_domain域目录,执行writeDomain() 时会直接覆盖原有域配置。 
writeDomain() --将修改后的域配置写入指定的目录,生产/更新base_domain域。根据你自己的安装目录更改,我这里是在ORACLE_HOME家目录Oracle下创建一系列文件夹Middleware/user_projects/domains/base_domain
closeTemplate() --关闭已加载的模板,释放相关资源。
exit() --退出WLST脚本执行环境

6. 执行脚本

$ORACLE_HOME/oracle_common/common/bin/wlst.sh create_domain.py

添加防火前规则,放行7001端口被访问:firewall-cmd --permanent --add-port=7001/tcp
nohup ./startWebLogic.sh > tmpweblogic.log 2>&1 & --后台启动weblogic
http://10.225.115.45:7001/console--页面访问控制台


就这样吧

Read more

Linux下libwebkit2gtk-4.1-0安装实战案例(从零实现)

Linux下 libwebkit2gtk-4.1-0 安装实战:从零搞定GTK 4应用的Web渲染引擎 你是否在开发一个基于 GTK 4 的桌面程序时,突然发现 webkit_web_view_new() 编译报错? 或者运行时提示“找不到 libwebkit2gtk-4.1.so.0 ”? 别急——这不是你的代码写错了,而是系统里缺了那个关键的 Web 渲染库: libwebkit2gtk-4.1-0 。 这玩意儿看起来只是个动态链接库,但它其实是现代 Linux 桌面应用中嵌入网页内容的“心脏”。无论是 OAuth 登录窗口、帮助文档展示,还是像 Epiphany 浏览器那样的完整 Web 客户端,都离不开它。 但问题来了:为什么这个包这么难装? 因为它依赖复杂、版本敏感、发行版支持参差不齐。Ubuntu

前端无障碍性:让所有人都能使用你的网站

前端无障碍性:让所有人都能使用你的网站 毒舌时刻 前端无障碍性?这不是给残障人士用的吗? "我的网站不需要无障碍性,用户都是正常人"——结果被投诉歧视, "无障碍性太麻烦了,我没时间做"——结果失去了一部分用户, "无障碍性就是加几个alt标签而已"——结果网站在屏幕阅读器下完全不可用。 醒醒吧,无障碍性不是慈善,而是一种责任! 为什么你需要这个? * 法律合规:许多国家和地区都有无障碍性法规 * 扩大用户群体:让残障人士也能使用你的网站 * SEO优化:无障碍性好的网站更容易被搜索引擎收录 * 用户体验:对所有人都友好的设计,对正常人也有好处 反面教材 <!-- 反面教材:缺乏语义化HTML --> <div> <div>网站logo</div> <

Claude Code本地化部署教程:零成本打造最强内网AI开发助手

Claude Code本地化部署教程:零成本打造最强内网AI开发助手

文章介绍了如何通过Ollama将Claude Code接入本地开源模型,实现不联网、不花钱、代码不出本地的开发环境。提供了详细配置教程,包括安装客户端、设置环境变量和启动本地模型。这种方式确保数据安全,无需订阅费用,可自由切换Qwen3、GLM等模型,为开发者提供了完全离线的AI辅助开发体验。 如果你是一个开发者,一定被Claude Code的能力震惊了。简单来说,它不仅仅是一个聊天框,而是一个能直接住在你的工作空间内的数字员工,能读懂你的源码、系统功能修BUG、写报告,互联网检索等,在授权的情况下,还能运行终端命令。 但是很多人担心隐私泄露,或者不想一直给Claude交昂贵的订阅费。今天,救星来了!通过Ollama可以把 Claude Code 这个“神级躯壳”接入本地运行的开源模型(如 Qwen3、GLM)。不联网、不花钱、代码不出本地,可谓是最强内网开发套装! 为什么又要本地跑Claude Code? * 数据安全:公司代码资产,怎么敢随便传输到云端?本地运行,物理隔离最安心。 * 告别订阅:

【大模型应用】Java开发者的AI智能编程实战解析:从Rule约束到Skill复用的全方位指南

Java开发者的AI智能编程实战解析:从Rule约束到Skill复用的全方位指南 作为Java资深开发者,掌握AI编程不仅关乎效率提升,更是技术竞争力的关键体现。 一、AI编程范式的技术演进与Java开发视角 2025年是AI编程工具从“辅助”走向“主导”的转折点。从最初的代码补全到现在的全流程自主开发,AI编程已经经历了六代技术演进。作为Java开发者,我们需要理解这一变革的技术本质。 1.1 演进历程与Java开发的影响 Vibe Coding(2024-2025年兴起)让Java开发者从繁琐的样板代码中解放出来,专注于架构设计和业务逻辑。而Rule、Skill、MCP、Agent等概念的形成,标志着AI编程从工具层面向工程化、体系化方向发展。 对于Java企业级开发而言,这一变化尤为显著:传统的Spring Boot项目初始化、依赖配置、项目结构搭建等重复性工作,现在可以通过AI Agent自动化完成,开发者只需关注核心业务架构。 核心概念定位与演进时间线 1. Vibe Coding:开发范式的革命 推出时间:2024年开始兴起,2025年形成明确方法论