附录 A. 参考资料
A.1. MTA 命令行参数 复制链接链接已复制到粘贴板!
以下是可用 MTA 命令行参数的详细描述。
要在不提示的情况下运行 MTA 命令(例如,从脚本执行时),请使用 --batchMode 来取 unspecified 参数的默认值,并使用 --overwrite 强制删除输出目录。同时还要指定所需的 --input 和 --target 参数。
详情请查看每个参数的描述。
| 参数 | 描述 |
|---|---|
| --additionalClassPath | 要添加到类路径的额外 JAR 文件或目录列表(以空格分隔),以便它们可用于处理或进行其他分析。 |
| --addonDir | 将指定的目录添加为自定义附加组件存储库。 |
| --batchMode | 指定该 MTA 应该在不提示确认的情况下以非互动模式运行的标记。这个模式采用未传递给命令行的任何参数的默认值。 |
| --debug | 在调试模式下运行 MTA 的标记。 |
| --disableTattletale |
可禁用 Tattletale 报告的生成标志。如果同时将 |
| --discoverPackages | 用于列出输入二进制应用程序中的所有可用软件包的标志。 |
| --enableClassNotFoundAnalysis | 标志,以启用对类路径上不可用的 Java 文件进行分析。如果一些类在分析时不可用,则不应使用。 |
| --enableCompatibleFilesReport | 启用生成可组合文件报告的标志。由于处理的所有文件都未发现问题,对于大型应用程序,此报告可能需要很长时间才能完成。 |
| --enableTattletale |
用于为每个应用程序生成 Tattletale 报告的标志。当 |
| --excludePackages |
要排除在评估中排除的软件包列表。例如,输入 |
| --excludeTags |
要排除的以逗号分隔的标签列表。指定后,不会处理具有这些标签的规则。要查看完整的标记列表,请使用 |
| --explodedApp | 指定提供的输入目录包含单个应用程序的源文件的标志。详情请参阅 输入文件机构表。 |
| --exportCSV |
标志,将报告数据导出到本地文件系统中的 CSV 文件。MTA 在由 |
| --help | 显示 MTA 帮助邮件。 |
| --immutableAddonDir | 将指定目录添加为自定义只读附加组件存储库。 |
| --includeTags |
要使用的空格分隔的标记列表。指定后,仅处理具有这些标签的规则。要查看完整的标记列表,请使用 |
| --input | 到要分析的一个或多个应用程序的文件或目录的路径列表。此参数是必需的。如需更多信息,请参阅 指定输入。 |
| --install |
指定要安装的附加组件。语法为 |
| --keepWorkDirs | 标记指示 MTA 不删除临时工作文件,如图形数据库和解压缩存档。这对于调试非常有用。 |
| --list | 列出已安装的附加组件的标志。 |
| --listSourceTechnologies | 用于列出所有可用的源技术的标志。 |
| --listTags | 用于列出所有可用的标签的标志。 |
| --listTargetTechnologies | 用于列出所有可用目标技术的标记。 |
| --mavenize |
标志,基于应用的结构和内容创建 Maven 项目目录结构。这将使用适当的 Java EE API 和项目模块之间依赖关系创建 |
| --mavenizeGroupId |
与 |
| --online | 标志,允许对需要的功能进行网络访问。目前,根据外部资源验证 XML 模式是否依赖于互联网访问。请注意,这附带了一个性能损失。 |
| --output | 指定输出 MTA 生成的报告信息的目录路径。如需更多信息 ,请参阅指定 输出目录。 |
| --overwrite |
用于强制删除 警告 请注意不要指定包含重要信息的报告输出目录! |
| --packages | MTA 要评估的软件包用空格分隔列表。强烈建议您使用此参数。如需更多信息,请参阅选择软件包。 |
| --remove |
删除指定的附加组件。语法为 |
| --skipReports |
表示 HTML 报告不应生成的标志。此参数的常见用途是使用 |
| --source |
要迁移的一个或多个源技术、服务器、平台或框架的空格分隔列表。此参数与 |
| --sourceMode | 用于表示要评估的应用包含源文件而非编译的二进制文件的标志。详情请参阅 输入文件机构表。 |
| --target |
要迁移到的一个或多个目标技术、服务器、平台或框架的空格分隔列表。此参数与 |
| --userIgnorePath |
指定在 |
| --userRulesDirectory |
除 |
| --version | 显示 MTA 版本。 |
A.1.1. 指定输入 复制链接链接已复制到粘贴板!
到要分析的一个或多个应用程序的文件或目录的路径列表。此参数是必需的。
使用
--input INPUT_ARCHIVE_OR_DIRECTORY [...]
--input INPUT_ARCHIVE_OR_DIRECTORY [...]
根据提供给 --input 参数提供的输入文件类型是否为文件或目录,它将根据提供的附加参数进行评估。
- 目录
Expand --explodedApp --sourceMode 没有参数 目录作为单个应用进行评估。
目录作为单个应用进行评估。
每个子目录都作为应用进行评估。
- File
Expand --explodedApp --sourceMode 没有参数 参数将被忽略;该文件将评估为单个应用。
该文件作为压缩的项目进行评估。
该文件作为单个应用进行评估。
A.1.2. 指定输出目录 复制链接链接已复制到粘贴板!
指定输出 MTA 生成的报告信息的目录路径。
使用
--output OUTPUT_REPORT_DIRECTORY
--output OUTPUT_REPORT_DIRECTORY
-
如果省略,则会在
INPUT_ARCHIVE_OR_DIRECTORY.report目录中生成报告。 如果存在输出目录,系统将提示您(默认值为 N)。
Overwrite all contents of "/home/username/OUTPUT_REPORT_DIRECTORY" (anything already in the directory will be deleted)? [y,N]
Overwrite all contents of "/home/username/OUTPUT_REPORT_DIRECTORY" (anything already in the directory will be deleted)? [y,N]Copy to Clipboard Copied! Toggle word wrap Toggle overflow
但是,如果您指定 --overwrite 参数,则 MTA 将继续删除并重新创建 目录。如需更多信息,请参阅此参数的描述。
A.1.3. 设置 Source Technology 复制链接链接已复制到粘贴板!
要迁移的一个或多个源技术、服务器、平台或框架的空格分隔列表。此参数与 --target 参数结合使用有助于确定使用哪个规则集。使用 --listSourceTechnologies 参数列出所有可用的源。
使用
--source SOURCE_1 SOURCE_2
--source SOURCE_1 SOURCE_2
--source 参数现在提供版本支持,它遵循 Maven 版本范围语法。这指示 MTA 仅运行与指定版本匹配的规则集。例如,--source eap:5。
迁移到 JBoss EAP 时,请务必指定版本,如 eap:6。仅指定 eap 将针对所有版本的 JBoss EAP 运行规则集,包括与您的迁移路径无关。
请参阅适用于您的源平台的 MTA 入门指南中的 支持的迁移路径。
A.1.4. 设置目标技术 复制链接链接已复制到粘贴板!
要迁移到的一个或多个目标技术、服务器、平台或框架的空格分隔列表。此参数与 --source 参数结合使用有助于确定使用哪个规则集。如果没有指定这个选项,系统会提示您选择一个目标。使用 --listTargetTechnologies 参数列出所有可用的目标。
使用
--target TARGET_1 TARGET_2
--target TARGET_1 TARGET_2
--target 参数现在提供版本支持,它遵循 Maven 版本范围语法。这指示 MTA 仅运行与指定版本匹配的规则集。例如,--target eap:7.
迁移到 JBoss EAP 时,请务必在目标中指定版本,例如 eap:6。仅指定 eap 将针对所有版本的 JBoss EAP 运行规则集,包括与您的迁移路径无关。
请参阅适用于您的源平台的 MTA 入门指南中的 支持的迁移路径。
A.1.5. 选择软件包 复制链接链接已复制到粘贴板!
MTA 要评估的软件包用空格分隔列表。强烈建议您使用此参数。
使用
--packages PACKAGE_1 PACKAGE_2 PACKAGE_N
--packages PACKAGE_1 PACKAGE_2 PACKAGE_N
-
在大多数情况下,您只想评估自定义应用程序类软件包而不是标准 Java EE 或第三方软件包。
PACKAGE_N参数是一个软件包前缀;将扫描所有子软件包。例如,要扫描命令行上的com.mycustomapp和com.myotherapp和com.myotherapp com.mycustomapp com.myotherapp参数。 -
虽然您可以为标准 Java EE 第三方软件(如
org.apache)提供软件包名称,但通常最好不要包含它们,因为它们不会影响迁移工作。
如果省略 --packages 参数,应用程序中的每个软件包都会被扫描,这可能会影响性能。最好为这个参数提供一个或多个软件包。有关如何提高性能的附加提示,请参阅 优化 MTA 性能。