linux-aapt文件调用问题
使用管理后台上传移动app安装包到服务器,出现异常问题,解决方案如下:
本地环境说明:
系统:linux(centos 64位)
远程工具:xshell
数据库:oracle
中间件:weblogic
操作步骤
1、初次添加应用,发现以下报错:
【Cannot run program "/weblogic/weblogic/Middleware/user_projects/domains/base_domain/linux-aapt": //java.io.IOException: error=13, Permission denied 】
原因是linux-aapt文件权限不够,进入文件所在路径,执行chmod 777 linux-aapt,然后重启控制台。
2、再次尝试添加移动应用,还是失败,发现报错
【Cannot run program "/weblogic/weblogic/Middleware/user_projects/domains/base_domain/linux-aapt": //java.io.IOException: error=2, No such file or directory 】
这是由于系统相关依赖包缺少导致的,需要安装好这些依赖包即可。
3、执行ysudo yum install glibc.i686,注意使用root用户,并开放外网访问配置;
4、之后发现如下错误error while loading shared libraries: libz.so.1
继续安装libz ,执行sudo yum install zlib.i686
5、之后发现报错error while loading shared libraries: libstdc++.so.6
执行 sudo yum install libstdc++.i686
如果此条命令不行,可以尝试下面的命令
sudo yum install libXrender.i686
sudo yum install fontconfig.i686
sudo yum install zlib.i686
sudo yum install libXext.i686
sudo yum install libstdc++.i686
6、如果还继续报错,则可能是aapt需要libstdc++的32位版本,系统应该只安装64位版本。
继续按下面方式执行:
(1)执行rpm -ql libstdc++ | cat -n查看系统信息
说明没有安装32位的libstdc++版本,需要进行安装
(2)执行yum list | grep libstdc++查看所需类型
这里是libstdc++.i686,则执行yum install libstdc++.i686即可
(3)最后补充一点,若是出现以下报错
则尝试下先执行yum install libstdc++.x86_64,安装完成后再执行yum install libstdc++.i686
安装成功即可正常添加移动应用程序了。
参考文档:
https://blog.csdn.net/agoodcoolman/article/details/51278167
特别说明一下:每个人本地环境都是千差万别的,但解决的方法是类似的,遇到问题先别急,根据报错一步步去判断,最后总会找到解决方法。