Eclipse 插件指南
通过使用 Eclipse 的 MTR 插件分析应用程序,识别并解决迁移问题。
摘要
使开源包含更多
红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。我们从这四个术语开始:master、slave、黑名单和白名单。由于此项工作十分艰巨,这些更改将在即将推出的几个发行版本中逐步实施。有关更多详情,请参阅我们的首席技术官 Chris Wright 提供的消息。
第 1 章 简介
所有使用此产品的客户均应开始过渡到 Migration Toolkit for Applications。
Migration Toolkit for Applications 与 Migration Toolkit for Runtimes 中提供的所有功能和规则集完全向后兼容,并将长期维护。
1.1. 关于 Eclipse 的 MTR 插件
您可以使用 Eclipse 的 Migration Toolkit for Runtimes (MTR)插件来迁移和现代化应用程序。
MTR 插件利用自定义规则集来分析您的项目,标记源代码中的问题,提供指导来修复问题,并提供自动代码替换(如果可能)。
1.2. 关于 Migration Toolkit for Runtimes
什么是 Migration Toolkit for Runtimes?
Migration Toolkit for Runtimes (MTR) 是一个可扩展、可自定义的基于规则的工具,简化了 Java 应用程序的迁移和现代化。
MTR 检查应用程序工件,包括项目源目录和应用程序存档,然后生成 HTML 报告突出显示需要更改的区域。MTR 支持许多迁移路径,包括以下示例:
- 升级至 Red Hat JBoss Enterprise Application Platform 的最新版本
- 从 Oracle WebLogic 或 IBM WebSphere Application Server 迁移到 Red Hat JBoss Enterprise Application Platform
- 容器化应用程序并使之成为云就绪
- 从 Java Spring Boot 迁移到 Quarkus
- 从 Oracle JDK 更新至 OpenJDK
- 从 OpenJDK 8 升级到 OpenJDK 11
- 从 OpenJDK 11 升级到 OpenJDK 17
- 从 OpenJDK 17 升级到 OpenJDK 21
- 将 EAP Java 应用程序迁移到 Azure
- 将 Spring Boot Java 应用程序迁移到 Azure
有关用例和迁移路径的更多信息,请参阅开发人员网页的 MTR。
Migration Toolkit for Runtimes 如何简化迁移?
Migration Toolkit for Runtimes 会查找常见资源和在迁移应用程序时的已知问题。它为应用程序使用的技术提供了高级视图。
MTR 生成详细的报告,评估迁移或现代化路径。此报告可帮助您估算大型项目所需的工作量,并减少涉及的工作。
如何了解更多信息?
请参阅 Migration Toolkit for Runtimes 简介,了解有关 Migration Toolkit for Runtimes 中的功能、支持的配置、系统要求以及可用工具的更多信息。
第 2 章 安装和配置 MTR 插件
您可以安装 MTR 插件,并将其配置为使用 MTR CLI 分析执行。
2.1. 在连接的环境中安装
您需要一个连接的环境来安装 MTR 插件。
MTR 插件已使用用于 Java Enterprise Developers 2023-03 的 Eclipse IDE 进行测试。
先决条件
以下是 Migration Toolkit for Runtimes (MTR)安装的先决条件:
安装了 Java Development Kit (JDK)。MTR 支持以下 JDK:
- OpenJDK 11
- OpenJDK 17
- Oracle JDK 11
- Oracle JDK 17
- Eclipse Temurin™ JDK 11
- Eclipse Temurin™ JDK 17
- 8 GB RAM
-
macOS 安装:
maxproc
的值必须是2048
或更高版本。
- 用于 Java Enterprise Developers 2023-03 的 Eclipse IDE
- JBoss 工具,从 Eclipse Marketplace安装
- mylyn SDK 和框架,使用 Eclipse 安装
Eclipse 是为 Java 17 预先配置的,插件直接与 Java 17 一同运行。
您还可以使用 Java 11 运行插件,该插件需要在创建新 Eclipse 项目或导入现有项目时将 JRE 版本设置为 Java 11。请参阅下面的第 6 步。
流程
- 启动 Eclipse。
- 从菜单栏中,选择 Help → Install New Software。
- 在 Work with 字段旁边,点 Add。
-
在 Name 字段中输入
MTR
。 -
在 Location 字段中,输入
https://marketplace.eclipse.org/content/migration-toolkit-runtimes-mtr
并点 OK。 选择要使用的 Java 版本。
- 如果使用 Java 11,请在 JRE 列表中选择 JavaSE 11。
- 如果使用 Java 17,请保留 JRE 选择不变。
- 选择所有 JBoss Tools - MTR 复选框,点 Next。
- 检查安装详情并点 Next。
- 接受许可协议条款并点 完成。
- 重新启动 Eclipse。
2.2. 配置 MTR 插件以使用 MTR CLI 分析执行
您可以将 MTR 插件配置为使用 MTR CLI 分析执行。
先决条件
- 您已从 Developers 网站或客户门户网站下载了 MTR CLI,并将其安装到本地。
流程
- 点 Configure MTR 图标打开配置设置。
- 使用 CLI 的父目录的路径填充 CLI 字段。
- 点应用。
第 3 章 访问 MTR 工具
您可以在 MTR 视角访问 MTR 插件工具。
先决条件
- 安装 MTR 插件后,您必须重启 Eclipse IDE。
流程
- 点 Window → Perspective → Open Perspective → Other。
选择 MTR 并点 OK。
此时会显示以下组件:
- issue Explorer 显示 MTR 插件标识的迁移问题。
MTR 服务器 是一个单独的进程,用于分析项目、标记迁移问题并生成报告。
您可以在 Issue Explorer 中启动、停止和查看 MTR 服务器的状态。
- 问题详情显示有关所选问题的详细信息,包括提示、严重性和任何其他资源。
MTR 报告是由 MTR 插件生成的 HTML 报告。在报告登录页面中,您可以导航到详细的报告,如应用程序详情、问题和依赖项。
注意默认情况下不生成报告。您必须在运行配置中选择 Generate Report 选项。
第 4 章 使用 MTR 插件分析项目
您可以通过 MTR 插件创建运行配置、运行分析,然后检查并解决 MTR 插件检测到的迁移问题,通过 MTA 插件分析您的项目。
4.1. 创建运行配置
您可以在 Issue Explorer 中创建运行配置。运行配置指定用于分析、迁移路径和其他选项的项目。
您可以创建多个运行配置。每一个运行配置都必须具有唯一的名称。
前提条件
- 您必须将您的项目导入到 Eclipse IDE。
流程
-
在 Issue Explorer 中,点 MTR 图标 (
) 创建运行配置。
在 Input 选项卡中,完成以下字段:
- 选择迁移路径。
- 在 Projects 字段中,点 Add,然后选择一个或多个项目。
在 Packages 字段中点 Add,然后选择一个或多个软件包。
注意指定用于分析的软件包可减少运行时。如果您没有选择任何软件包,则项目中的所有软件包都会被扫描。
在 Options 选项卡中,您可以选择 Generate Report 来生成 HTML 报告。该报告显示在 Report 选项卡中,并作为文件保存。
此时会显示其他选项。详情请参阅 CLI 指南中的关于 MTR 命令行参数。
- 在 Rules 选项卡中,您可以选择您为 MTR 插件导入或创建的自定义规则集。
- 点 Run 以开始分析。
4.2. 分析项目
您可以使用保存的运行配置运行 MTR 插件来分析您的项目。
流程
在 MTR 透视图中,点 Run 按钮(
)并选择运行配置。
MTR 插件分析您的项目。Issue Explorer 显示使用 ruleset 检测到的迁移问题。
- 分析完项目后,在 Issue Explorer 中停止 MTR 服务器以节省内存。
4.3. 检查问题
您可以查看 MTR 插件识别的问题。
流程
- 点 Window → Show View → Issue Explorer。
可选:点 Options 菜单
来过滤问题,选择 Group By 和 a 选项。
在右键并选择 Issue Details 来查看问题的信息,包括其严重性以及如何解决它。
以下图标表示问题的严重性和状态:
表 4.1. 问题图标 图标 描述 必须解决这个问题才能成功进行迁移。
这个问题是修复迁移的可选功能。
此问题可能需要在迁移过程中解决。
这个问题已解决。
这个问题已过时。自 MTR 最后一次将其识别为问题后,会修改标记为问题的代码。
这个问题提供了一个快速修复,这是成功进行迁移所必需的。
这个问题提供了一个快速修复,对于迁移来说是可选的。
这个问题提供了一个快速修复,在迁移过程中可能会有问题。
- 双击一个问题,在编辑器中打开相关的代码行。
4.4. 解决问题
您可以通过执行以下操作之一解决 MTR 插件检测到的问题:
您可以双击它以在编辑器中打开它,并编辑源代码。
这个问题会显示一个 Stale 图标(
),直到下次运行 MTR 插件为止。
- 您可以在问题上单击鼠标右键,然后选择 Mark as Fixed。
-
如果问题显示快速修复图标(
),您可以右键点击问题并选择 Preview Quick Fix,然后选择 Apply Quick Fix。
第 5 章 管理规则
MTR 插件附带了一组用于分析项目以及识别迁移和现代化问题的核心 System 规则。
您可以创建并导入自定义规则集。
5.1. 查看规则
您可以查看 MTR 插件的系统和自定义规则(若有)。
先决条件
- 要查看系统规则,MTR 服务器必须正在运行。
流程
- 点 Rulesets 选项卡。
- 展开 System 以查看系统规则集或 Custom 来查看自定义规则集。
- 展开规则集。
- 双击一条规则,在查看器中打开它。
- 点 Source 选项卡查看规则的 XML 源。
5.2. 创建自定义规则集
您可以在 MTR 视角中创建自定义规则集。
有关创建自定义 XML 规则的更多信息,请参阅规则开发指南。
流程
- 点 Rulesets 选项卡。
-
点 Create Ruleset 图标(
)。
- 为规则集选择一个项目和目录。
输入文件名。
注意该文件必须具有
.windup.xml
扩展。-
输入 ruleset ID,例如
my-ruleset-id
。 - 可选: 选择 Generate quickstart 模板向文件添加基本规则模板。
- 点 Finish。
- ruleset 文件会在编辑器中打开,您可以在文件中添加并编辑规则。
- 点 Source 选项卡编辑 ruleset 文件的 XML 源。
您可以在创建运行时配置时选择新规则集。
5.3. 导入自定义规则集
您可以将自定义规则集导入到 MTR 插件中,以分析您的项目。
先决条件
带有
.windup.xml
扩展的自定义规则集文件。有关创建规则集的信息,请参阅规则开发指南。
流程
- 点 Rulesets 选项卡。
-
点 Import Ruleset 图标(
)。
浏览并选择要导入的 XML 规则文件。
当您在 Rulesets 选项卡上展开 Custom 时,会显示自定义规则集。
5.4. 提交自定义规则集
您可以提交自定义规则集,以包括在官方 MTR 规则存储库中。这样,您的自定义规则可审核并包含在后续 MTR 版本中。
流程
- 点 Rulesets 选项卡。
-
点箭头图标(
)并选择 Submit Ruleset。
完成以下字段:
- Summary :描述规则的目的。这是提交的标题。
- code Sample :输入规则应针对的源代码示例。
- 描述 :输入规则的简短描述。
- 点 Choose Files 并选择 ruleset 文件。
- 点 Submit。