中文
注册
我要评分
文档获取效率
文档正确性
内容完整性
文档易理解
在线提单
论坛求助
鲲鹏小智

重构软件包常见失败场景

重构软件包常见失败场景请参见表1中的处理建议解决。

“/opt/DevKit”为工具安装目录,请根据实际情况替换。

表1 重构软件包常见失败场景

失败场景

可能原因

处理建议

缺少对应SO/静态库/JAR/二进制文件

SO/静态库/JAR/二进制文件无法自动下载。

手动下载SO/静态库/JAR/二进制文件并放入“/opt/DevKit/workspace/xx/porting/data”目录(xx代表用户名),重新执行“重构软件包”。

说明:
  • 可在重构报告中查看详细信息并按照提示操作。
  • 缺少SO/静态库/二进制文件时,请自行获取对应名称的SO/静态库/二进制文件(如通过下载方式获取SO/静态库/二进制文件,请解压RPM或DEB包取出对应名称的SO/静态库/二进制文件)放入“/opt/DevKit/workspace/xx/porting/data”目录(xx代表用户名)后重新执行“重构软件包”。

依赖文件中存在对应x86架构的SO/静态库/二进制文件

依赖文件架构错误。

手动下载ARM架构的SO/静态库或二进制文件,并替换“/opt/DevKit/workspace/xx/porting/data”目录(xx代表用户名)下的同名文件,重新执行“重构软件包”。

说明:
  • 可在重构报告中查看详细信息并按照提示操作。
  • 替换SO/静态库/二进制文件时,请自行获取ARM架构的SO/静态库/二进制文件(如通过下载方式获取SO/静态库/二进制文件,解压RPM或DEB包取出对应名称的SO/静态库/二进制文件)替换“/opt/DevKit/workspace/xx/porting/data”目录(xx代表用户名)的同名文件后重新执行“重构软件包”。

JAR文件下载失败

网络连接超时或磁盘空间不足。

  • 检查网络配置、参考配置代理检查代理配置或检查“/opt”目录空间大小。
  • 手动下载JAR文件并放入“/opt/DevKit/workspace/xx/porting/data”目录(xx代表用户名),重新执行“重构软件包”。
    说明:

    需要手动下载的JAR文件名称及下载路径可以在重构报告中查看。

分析RPM/DEB包内部SO/JAR/静态库/二进制文件失败

磁盘空间不足、RPM/DEB包格式错误或软件包不需要迁移。

检查“/opt”目录空间大小、检查RPM/DEB包内容完整、格式正确或使用鲲鹏应用迁移工具确认软件包是否需要迁移。

提取与分析control文件失败、提取与分析spec文件失败

磁盘空间不足或RPM/DEB包格式错误。

检查“/opt”目录空间大小或检查RPM/DEB包内容完整、格式正确。

重新重构失败

可能是由于文件替换失败(系统缺少JAR命令或者JAR包内嵌JAR包)、工作空间rpmbuilder未清理或者分析RPM/DEB包出错。

  • 如果系统缺少JAR命令,请安装JDK工具。
    说明:

    不支持JAR包内嵌JAR包的软件包重构。

  • (针对RPM包)执行如下命令清理工作空间后重新执行“重构软件包”。
    1
    2
    3
    cd  /opt/DevKit/workspace/devadmin/porting/refactoring
    rm -rf rpmbuilder
    mkdir -pv ./rpmbuilder/{BUILD,BUILDROOT,RPMS,SOURCES,SPECS,SRPMS}
    
  • (针对DEB包)执行如下命令清理工作空间后重新执行“重构软件包”。
    1
    rm -rf /opt/DevKit/workspace/devadmin/porting/tmp_path
    

因缺少rpmrebuild导致的软件包重构失败

服务器上未安装rpmrebuild包

  • 安装rpmrebuild:自行下载rpmrebuild组件,并上传至服务器执行以下命令安装。
    1
    rpm -ivh xxx.rpm
    
  • 安装rpmbuild:执行以下命令检查yum源中的rpmbuild的rpm包并安装。
    1
    2
    yum list | grep rpm-build
    yum install -y rpm-build
    
  • 如果yum源中不存在rpmbuild的rpm包,请自行下载对应组件,并上传至服务器执行以下命令安装。
    1
    rpm -ivh xxx.rpm