---
title: 无源码迁移结果
description: "迁移过程中会对应用包中的源码进行提取，源码提取之后会进行SQL和配置相关分析，并生成迁移报告。用户可根据“迁移结果”页面中的迁移报告及指导建议，完成迁移操作。"
url: https://www.hikunpeng.com/document/detail/zh/kunpengdevps/portingadvisor/systemmigration/DevKit_Porting_0121.html
sourcePath: /source/zh/kunpengdevps/portingadvisor/systemmigration/DevKit_Porting_0121.html
indexId: 3aaed9cae9285e257b8f4306937ea3ae6eb2ba058431b191185dcc36d2b8cbac79
---
# 无源码迁移结果

迁移过程中会对应用包中的源码进行提取，源码提取之后会进行SQL和配置相关分析，并生成迁移报告。用户可根据“迁移结果”页面中的迁移报告及指导建议，完成迁移操作。

- “指导建议”侧滑框支持通过拖拽调整界面大小；且单击左树文件列表中的文件，可快速定位至首个指导建议位置。
- 单击“查看详情”按钮，“指导建议”的左侧列表可显示文件包含的建议数（不包含已兼容SQL语句和系统已修改内容）。
- 可在“迁移结果”页面，单击界面上方提示信息中“新建工程”，返回“新建工程”页面修改待迁移的成分信息并重启。
- 按钮表明该列数据支持搜索功能，可单击进行数据搜索；按钮表明该列数据支持筛选功能，可单击进行数据筛选；按钮表明该列数据支持排序功能，可单击选择升序或降序排列；按钮表明表单支持的列，可单击选择需要展示或隐藏的列。


#### 前提条件

- 已成功登录鲲鹏DevKit。
- 已创建系统迁移工程并完成迁移实施。


#### 迁移报告-应用

1. 进入“迁移结果”页面，显示当前迁移工程报告，默认进入“应用”页签，界面包含“待适配代码”和“应用待兼容依赖库”两部分。
  图1 迁移报告1

2. 待适配代码修改。

  a. 单击“待适配代码”区域左上角“一键Quick Fix”。
    图2 待适配代码

**表1 待适配代码参数说明**

| 参数 | 说明 |
| --- | --- |
| 文件名称 | 源码文件名称。 |
| 目标节点 | 目标节点，支持过滤。 |
| 软件包来源 | 源码文件所属软件包来源。 |
| 源路径 | 源码文件在软件包中的源路径。 |
| 软件包名 | 软件包名，默认不展示，可通过展开查看。 |
| SQL总数 | 提取的SQL总数。 |
| 待修改SQL | 显示待修改的SQL数。 |
| 待修改配置 | 显示待修改的配置数。 |
| 状态 | 显示该文件的迁移状态，包括已迁移、待迁移和已屏蔽。 |
| 指导建议 | 请单击“查看详情”，查看指导建议详情。 |
| 备注 | 备注信息。 |
| 操作 | 可按照迁移进度修改状态，并进行备注。 |


  b. 右侧将展示支持一键Quick Fix的文件，包含问题类型、问题描述、修改建议及代码Diff。可选择需要一键Quick Fix的文件，然后单击右下角“修复”。
    一键Quick Fix支持通过软件包名、文件路径、类别等进行搜索。 单击上方“全选/取消全选”按钮，可全选或取消全选所有需要修复的问题；也可通过提示条中“取消选择”按钮，取消已选内容。受性能限制，单次最多支持修复10000条，剩余条数请再次单击“修复”按钮进行处理。 也可支持单击“指导建议”列“查看详情”，将鼠标置于有黄色波浪线的代码上，在悬浮的提示中单击“Quick Fix”自动修复。

    图3 一键Quick Fix

  c. 对于不支持一键Quick Fix的修改点，单击“指导建议”列“查看详情”，右侧将展示指导建议详情。
    图4 指导建议

  d. 修改完成后，可选择“部署应用”或者“下载应用包”。若存在待修改的SQL或配置，可能会影响应用的正常运行。

    - 部署应用：可将修改后的源码进行重新编译打包，并将应用包部署到目标节点。
      若添加成分时选择“批量导入源成分”，则应用默认部署至源成分所在路径下；若添加成分时选择“添加成分信息”，则应用默认部署至“/devkit_migrated/app”路径下。

    - 下载应用包：可将修改后的源码进行重新编译打包，并下载至本地。
- 在部署或下载应用包之前，需要确保JDK环境已就绪。默认会检查“/usr/bin”和“/usr/local/bin”路径下的JDK。如果未找到JDK或需要使用其他路径下的JDK，可参见  配置JDK
自行进行配置。
- 中间件包含的应用不支持下载，仅支持“部署应用”。


3. 应用待兼容依赖库修改。
  图5 应用待兼容依赖库

**表2 应用待兼容依赖库参数说明**

| 参数 | 说明 |
| --- | --- |
| 源成分名 | 迁移的源成分名。 |
| 源节点 | 成分源节点，支持过滤。 |
| 目标节点 | 成分目标节点，支持过滤。 |
| 成分归属 | 成分的归属。 |
| 源成分来源 | 成分的来源。 |
| 目标成分名 | 迁移至的目标成分名。 |
| 状态 | 显示该成分的迁移状态，包括已迁移、待迁移和已屏蔽。 |
| 指导建议 | 请单击“查看详情”，查看指导建议详情。 |
| 状态来源 | 显示该成分的来源，默认不展示，可通过展开查看。默认为工具迁移，若修改成分状态，状态来源将变更为“自定义”。 |
| 备注 | 备注信息。 |
| 更新时间 | 显示迁移状态的更新时间，默认不展示，可通过展开查看。 |
| 操作 | 可按照迁移进度修改状态，并进行备注。 |


  单击“指导建议”
  列“查看详情”
  ，右侧将展示指导建议详情。对于Java应用包，可自动转为运行在鲲鹏平台的JAR包。图6 指导建议


  - 替换失败的依赖，请根据迁移指导，通过执行下载依赖文件脚本，获取相关依赖或配套文件。

    a. 单击“下载依赖文件脚本”，解压下载的压缩包，然后执行解压目录下的脚本以获取相关依赖或配套文件。

```
sh dependency_download.sh
```


      如下为示例，显示如下加粗内容则表示依赖下载成功：

```
Start downloading: DmDialect-for-hibernate5.6-8.1.3.140.jar
Start downloading: DmJdbcDriver18-8.1.3.140.jar
DmDialect-for-hibernate5.6-8.1.3.140.jar       100%[====================================================================================================>]  49.62K   203KB/s    in 0.2s
Downloaded: DmDialect-for-hibernate5.6-8.1.3.140.jar
DmJdbcDriver18-8.1.3.140.jar                   100%[====================================================================================================>]   1.31M  92.7KB/s    in 8.3s
Downloaded: DmJdbcDriver18-8.1.3.140.jar
All files have been downloaded.
```


      需在联网环境下执行脚本，具体操作请参见配置wget代理。 执行完成后，会在脚本同级目录生成download文件夹，下载的依赖存放于该文件夹下。

    b. 对于“与架构相关的依赖文件”，请根据“替换软件包路径”，逐一替换未成功转换的依赖；对于“与数据库相关的依赖文件”，请根据处理建议进行迁移。
    c. 请使用自行准备的测试用例，在鲲鹏环境中验证应用是否迁移成功。
  - 替换成功的依赖，请根据迁移指导进行操作，且替换成功的依赖支持回退操作。回退之后，“与架构相关的依赖文件”将使用原软件包替换转换后的软件包；“与数据库相关的依赖文件”将删除应用包中添加的依赖文件。


4. 迁移完成后，可关闭右侧侧滑框，更新文件/成分状态及备注信息。
图7 编辑文件/成分

  - 方式一：单击“操作”列“编辑”，在下拉框中选择需要更新的状态，然后单击“保存”。
  - 方式二：可勾选多个文件或成分，然后单击左上角“批量编辑”，同时对所选择的多个源码文件或成分进行编辑，修改完成后单击“确定”。
    单击上方“全选/取消全选”按钮，可一键全选或取消全选所有文件或成分；也可通过提示条中“取消选择”按钮，取消已选内容。 “应用待兼容依赖库”中上方提示条中显示的已选择条数和总条数为源成分的统计信息；左下角分页显示的总条数为应用所属父级目录的总项数。


#### 迁移报告-中间件/数据库

1. 进入“迁移结果”页面，显示当前迁移工程报告，以中间件为例。
  图8 迁移报告2

**表3 迁移报告参数说明**

| 参数 | 说明 |
| --- | --- |
| 源成分名 | 迁移的源成分名。 |
| 源节点 | 成分源节点，支持过滤。 |
| 目标节点 | 成分目标节点，支持过滤。 |
| 成分归属 | 成分的归属。 |
| 源成分来源 | 成分的来源。 |
| 目标成分名 | 迁移至的目标成分名。 |
| 状态 | 显示该成分的迁移状态，包括已迁移、待迁移和已屏蔽。 |
| 指导建议 | 请单击“查看详情”，查看指导建议详情。 |
| 状态来源 | 显示该成分的来源，默认不展示，可通过展示。默认为工具迁移，若修改成分状态，状态来源将变更为“自定义”。 |
| 备注 | 备注信息。 |
| 更新时间 | 显示迁移状态的更新时间，默认不展示，可通过展示。 |
| 操作 | 可按照迁移进度修改状态，并进行备注。 |


2. 单击“指导建议”列“查看详情”，右侧将展示指导建议详情。

  - 已迁移：请根据“建议详情”中验证方法进行系统功能性验证，以Oracle JDK迁移至毕昇JDK为例。
    图9 建议详情

  - 待迁移：请根据“建议详情”中迁移指导进行手动迁移及系统功能性验证，以RabbitMQ迁移为例。
    图10 建议详情

    对于中间件，如涉及配置文件修改，请单击对应文件，并根据悬浮提示中的指导建议进行修改。
    - 对于同中间件及同主版本间迁移（例如Tomcat 8.*到Tomcat 8.*），“待适配文件”修改完成后可单击“保存并同步”，保存修改内容的同时会备份源文件并同步至目标节点。
    - 对于其他迁移场景，修改完成后可单击“保存”，保存修改内容的同时会备份源文件。
    - 对于“保存失败”的配置文件，请根据失败原因修复后，单击“重试”按钮进行重试。
    - 若待适配文件同步至目标节点失败：

      - 可单击“迁移报告”上方提示信息中“指导建议详情”，可快速定位至首个同步失败的中间件。然后打开同步失败的配置文件，将鼠标悬浮至界面上方“同步失败”标识上，查看失败原因并进行重试。
      - 可将鼠标悬浮至“成分列表”中对应中间件后“同步失败”标识上，单击“查看详情”，根据弹窗中查看失败原因并进行重试，且支持单个重试和全部重试；或单击“同步失败”标识后的按钮进行重试。
    - 若中间件仅因配置文件问题处于“待迁移”状态，在配置文件修改并同步至目标节点后，状态将自动更新为“已迁移”。


    待迁移成分支持单击指导建议下方“编辑并重新迁移”按钮，可返回新建工程页面，重新编辑成分信息后单击“重启”再次尝试迁移。

3. 迁移完成后，可关闭右侧侧滑框，更新成分状态及备注信息。
图11 编辑成分

  - 方式一：单击“操作”列“编辑”，在下拉框中选择需要更新的状态，然后单击“保存”。
  - 方式二：可勾选多个文件，然后单击左上角“批量编辑”，同时对所选择的多个源码文件进行编辑，修改完成后单击“确定”。
    单击上方“全选/取消全选”按钮，可一键全选或取消全选所有成分；也可通过提示条中“取消选择”按钮，取消已选内容。

4. 可单击界面左下角“源码迁移”，进行源码迁移。
