附录 A. 参考材料


A.1. 关于 Maven 插件参数

以下是可用 MTR Maven 插件参数的详细描述。

表 A.1. MTR Maven 插件参数
参数描述

analyzeKnownLibraries

用于分析应用程序中嵌入的已知软件工件的标志。默认情况下,MTR 仅分析应用程序代码。

注意

这个选项可能会导致执行时间较长,并报告大量迁移问题。

customLoggingPropertiesFile

一个到包含 java.util.logging.LogManager 日志记录配置的 logging.properties 文件的绝对路径。如果指定路径无效,或者未指定 选项,则日志记录将恢复为使用 Maven 插件中包含的 logging.properties 文件。

disableTattletale

可禁用 Tattletale 报告的生成标志。如果同时将 enableTattletaledisableTattletale 设定为 true,则 disableTattletale 会被忽略,但仍会生成 Tattletale 报告。

enableCompatibleFilesReport

启用生成可组合文件报告的标志。由于处理的所有文件都未发现问题,对于大型应用程序,此报告可能需要很长时间才能完成。

enableTattletale

用于为每个应用程序生成 Tattletale 报告的标志。当 eap 位于包含的目标中时,默认启用这个选项。如果同时将 enableTattletaledisableTattletale 设定为 true,则 disableTattletale 会被忽略,但仍会生成 Tattletale 报告。

enableTransactionAnalysis

[技术预览] 标记来启用生成交易报告,该报告显示调用堆栈,该堆栈对关系数据库表执行操作。Enable Transaction Analysis 功能支持 Spring Data JPA,以及用于 SQL 语句执行的传统的 preparedStatement() 方法。它不支持 ORM 框架,如 Hibernate。

注意

enableTransactionAnalysis 只是一个技术预览功能。技术预览功能不受红帽产品服务等级协议(SLA)支持,且功能可能并不完整。红帽不推荐在生产环境中使用它们。这些技术预览功能可以使用户提早试用新的功能,并有机会在开发阶段提供反馈意见。

excludePackages

要从评估中排除的软件包列表。例如,输入 "com.mycompany.commonutilities" 将排除所有软件包名称以"com.mycompany.commonutilities"开头的类。

excludeTags

要排除的标签列表。指定后,不会处理具有这些标签的规则。

explodedApps

指定提供的输入目录包含单个应用程序的源文件的标志。

exportCSV

标志,将报告数据导出到本地文件系统中的 CSV 文件。MTR 在 outputDirectory 参数指定的目录中创建文件。CSV 文件可导入到电子表格程序,以便进行数据操作和分析。

includeTags

要使用的标签列表。指定后,仅处理具有这些标签的规则。

inputDirectory

指定包含要分析的应用程序的目录路径。此参数默认为 {project.basedir}/src/main/

keepWorkDirs

标记指示 MTR 不删除临时工作文件,如图形数据库和解压缩存档。这对于调试非常有用。

legacyReports

指示 MTR 生成旧格式报告而不是新的格式报告的标记。

软件包

MTR 要评估的软件包列表。此参数是必需的。

offlineMode

以离线模式运行的标记,禁用网络访问功能,如验证方案。用于提高性能。

outputDirectory

指定输出 MTR 生成的报告信息的目录路径。此参数默认为 {project.build.directory}/windup-report

覆盖

用于强制删除 outputDirectory 指定的现有输出目录的标志。默认值为 true

警告

请注意不要指定包含重要信息的报告输出目录!

sourceTechnologies

从迁移的一个或多个源技术、服务器、平台或框架的列表。这个参数与 targetTechnologies 参数结合使用有助于确定使用哪个规则集。

sourceMode

用于表示要评估的应用包含源文件而非编译的二进制文件的标志。默认值为 true

targetTechnologies

要迁移至的一个或多个目标技术、服务器、平台或框架的列表。这个参数与 sourceTechnologies 参数结合使用有助于确定使用哪个规则集。

userIgnorePath

指定 MTR 的位置,以识别应忽略的文件。

userRulesDirectory

为 MTR 指定寻找自定义 MTR 规则的位置。该值可以是包含规则集文件或单个规则集文件的目录。ruleset 文件必须使用 .windup.xml 后缀。

windupHome

一个可选参数,指向提取的 MTR CLI 的根目录。通过引用 CLI 的本地安装,Maven 插件可直接访问所有索引,从而提高了性能。

windupVersion

指定要运行的 MTR 版本。默认情况下,这是 Maven 插件的构建版本。

A.1.1. 指定输入目录

包含要分析的一个或多个应用程序的文件或目录的路径。默认为 {project.basedir}/src/main/

使用方法

<inputDirectory>
    <INPUT_ARCHIVE_OR_DIRECTORY>
</inputDirectory>

A.1.2. 评估输入文件

根据为 inputDirectory 参数提供的输入文件类型,它会根据提供的附加参数进行评估,如下所示。

目录
--explodedApp--sourceMode没有参数

目录作为单个应用进行评估。

目录作为单个应用进行评估。

每个子目录都作为应用进行评估。

File
--explodedApp--sourceMode没有参数

参数将被忽略;该文件将评估为单个应用。

该文件作为压缩的项目进行评估。

该文件作为单个应用进行评估。

A.1.3. 指定输出目录

指定输出 MTR 生成的报告信息的目录路径。

使用方法

<outputDirectory>
    <OUTPUT_REPORT_DIRECTORY>
</outputDirectory>

  • 如果省略,则报告将在 {project.build.directory}/windup-report 目录中生成。
  • 如果存在输出目录,它将根据 overwrite 参数的值覆盖。此参数默认为 true,并导致 MTR 删除并重新创建 目录。

A.1.4. 设置源技术

从迁移的一个或多个源技术、服务器、平台或框架的列表。这个参数与 targetTechnologies 参数结合使用有助于确定使用哪个规则集。

使用方法

<sourceTechnologies>
    <source>eap:6</source>
</sourceTechnologies>

现在,SourceTechnologies 参数提供版本支持,它遵循 Maven 版本范围语法。这指示 MTR 只运行与指定版本匹配的规则集。例如,<source>eap:5</source>

A.1.5. 设置目标参数

要迁移至的一个或多个目标技术、服务器、平台或框架的列表。这个参数与 sourceTechnologies 参数结合使用有助于确定使用哪个规则集。这个参数是必需的

使用方法

<targetTechnologies>
  <target>eap:7</target>
</targetTechnologies>

targetTechnologies 参数现在提供版本支持,它遵循 Maven 版本范围语法。这指示 MTR 只运行与指定版本匹配的规则集。例如,<target>eap:7</target>

警告

迁移到 JBoss EAP 时,请务必在目标中指定版本,例如 eap:6。仅指定 eap 将针对所有版本的 JBoss EAP 运行规则集,包括与您的迁移路径无关。

有关相应 JBoss EAP 版本的 Migration Toolkit for Runtimes 简介,请参阅支持的迁移路径

A.1.6. 选择软件包

MTR 要评估的软件包列表。强烈建议您使用此参数。

使用方法

<packages>
  <package>
    <PACKAGE_1>
  </package>
  <package>
    <PACKAGE_2>
  </package>
</packages>

  • 在大多数情况下,您只想评估自定义应用程序类软件包而不是标准 Java EE 或第三方软件包。<PACKAGE_N> 参数是一个软件包前缀;所有子软件包都会被扫描。例如,要扫描软件包 com.mycustomappcom.myotherapp,请在 pom.xml 中使用下列代码片段:

    <packages>
      <package>com.mycustomapp</package>
      <package>com.myotherapp</package>
    </packages>
  • 虽然您可以为标准 Java EE 第三方软件(如 org.apache )提供软件包名称,但通常最好不要包含它们,因为它们不会影响迁移工作。
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.