Migration Toolkit for Runtimes: Use cases and migration paths
The tools, reports, and knowledge that help developers modernize applications to Red Hat JBoss Enterprise Application Platform (EAP) or Red Hat’s build of OpenJDK at scale.
The migration toolkit for runtimes is an assembly of tools that support large-scale Java application modernization and migration projects across a broad range of transformations and use cases. It accelerates application code analysis and code migration, supports effort estimation, and helps you move applications to the cloud and containers.
Explore how Red Hat’s migration toolkit for runtimes makes it simple to modernize your applications.
Manage multiple projects within the web console by either uploading single apps or grouping bigger application portfolios with dozens or hundreds of applications into projects for analysis. The web console also helps you create and optimize reports to detail migration challenges and identify solutions.
When adding a new project, you can select which type of transformations you would like to analyze for, exclude certain packages, and set advanced options if needed. The migration toolkit for runtimes will start decompiling your application binaries, analyze the code against your desired migration paths, and create a powerful set of reports.
Your project’s overview page gives you a view of each application and the technologies identified, along with a story point based on estimated effort. The migration toolkit will also indicate suitable target runtimes–for example, whether an application can be deployed on Apache Tomcat or Red Hat JBoss Enterprise Application Platform. The report is dynamic so you can filter the list by certain technologies.
With large application portfolios, it is critical to understand not only code dependencies, but also code that is shared between multiple applications. The migration toolkit for runtimes automatically detects and visualizes these dependencies for you.
With the migration toolkit for runtimes, you can browse the source code for identified migration tasks, and get inline hints with suggestions and recommendations. That not only saves teams a lot of time you would otherwise spend on analysis but also minimizes the risk. With these capabilities, the migration toolkit helps detail the scope of work and supports estimating the effort necessary to complete the transformation tasks.
Once you start the actual transformation, you will want to switch to your favorite integrated development environment (IDE). We provide a range of IDE plug-ins, such as Red Hat CodeReady Studio / Eclipse, Red Hat OpenShift Dev Spaces (formerly Red Hat CodeReady Workspaces) / Eclipse Che, a Visual Studio Code extension, and an IntelliJ extension.
The plug-ins come with all the reporting capabilities of the web console, plus additional features such as a task list and support for automatic code changes. There’s also a guided rules editor so you can easily create new rules based on newly identified migration challenges to share with your team or contribute upstream.
You can also automate analysis by either adding a Maven plug-in into your release pipeline, or using the command line interface for batch processing. This is not only popular for migration projects, but also for validating code against organizational standards.
The migration toolkit is highly extensible by allowing you to create your own rule sets and target runtime labels. You can develop custom rules to extend existing rule sets, build new migration paths, or enforce certain code standards in your teams.
Best of all, it’s very easy to write new rules—either as XML, or using the guided rules editor in the IDE plug-ins. Target runtime labels assess the technologies discovered within applications to determine if they are supported by a specific runtime. Red Hat JBoss Enterprise Application Platform and Red Hat JBoss Web Server are the two shipped target runtime labels.