Skip to content

Commit 0db59f5

Browse files
committed
edits
1 parent 3b68594 commit 0db59f5

File tree

1 file changed

+31
-30
lines changed

1 file changed

+31
-30
lines changed

articles/migrate/appcat/java.md

Lines changed: 31 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,9 @@ author: KarlErickson
55
ms.author: antoniomanug
66
ms.service: azure
77
ms.custom: devx-track-java, devx-track-extended-java
8-
ms.topic: conceptual
9-
ms.date: 07/11/2024
8+
ms.topic: overview
9+
ms.date: 07/12/2024
10+
#customer intent: As a developer, I want to assess my Java application so that I can understand its readiness for migration to Azure.
1011
---
1112

1213
# Azure Migrate application and code assessment for Java
@@ -15,7 +16,7 @@ This guide describes how to use the Azure Migrate application and code assessmen
1516

1617
The `appcat` command line interface (CLI) is a command-line tool to assess Java application binaries and source code to identify replatforming and migration opportunities for Azure. It helps you modernize and replatform large-scale Java applications by identifying common use cases and code patterns and proposing recommended changes.
1718

18-
The tool discovers application technology usage through static code analysis, provides effort estimation, and accelerates code replatforming, helping you to prioritize and move Java applications to Azure. With a set of engines and rules, it can discover and assess different technologies such as Java 11, Java 17, Jakarta EE, Spring, Hibernate, JMS, and more. It then helps you replatform the Java application to different Azure targets (Azure App Service, Azure Kubernetes Service, Azure Container Apps, and Azure Spring Apps) with specific Azure replatforming rules.
19+
The tool discovers application technology usage through static code analysis, provides effort estimation, and accelerates code replatforming, helping you to prioritize and move Java applications to Azure. With a set of engines and rules, it can discover and assess different technologies such as Java 11, Java 17, Jakarta EE, Spring, Hibernate, Java Message Service (JMS), and more. It then helps you replatform the Java application to different Azure targets (Azure App Service, Azure Kubernetes Service, Azure Container Apps, and Azure Spring Apps) with specific Azure replatforming rules.
1920

2021
This tool is open source and is based on [WindUp](https://github.com/windup), a project created by Red Hat and published under the [Eclipse Public License](https://github.com/windup/windup/blob/master/LICENSE).
2122

@@ -26,33 +27,33 @@ The tool is designed to help organizations modernize their Java applications in
2627
With it, you can perform the following tasks:
2728

2829
* Discover technology usage: Quickly see which technologies an application uses. Discovery is useful if you have legacy applications with not much documentation and want to know which technologies they use.
29-
* Assess the code to a specific target: Assess an application for a specific Azure target. Check the effort and the modifications you have to do in order to replatform your applications to Azure.
30+
* Assess the code to a specific target: Assess an application for a specific Azure target. Check the effort and the modifications you have to do to replatform your applications to Azure.
3031

3132
### Supported targets
3233

33-
The tool contains rules for helping you replatform your applications so you can deploy to, and leverage, different Azure services.
34+
The tool contains rules for helping you replatform your applications so you can deploy to, and use, different Azure services.
3435

35-
The rules used by Azure Migrate application and code assessment are grouped based on a `target`. A target is where or how the application will run, as well as general needs and expectations. When assessing an application, you may choose multiple targets.
36+
The rules used by Azure Migrate application and code assessment are grouped based on a *target*. A target is where or how the application runs, and general needs and expectations. When assessing an application, you can choose multiple targets. The following table describes the available targets:
3637

37-
| Target | Description | ID |
38-
|-------------------------|-------------------------|---------------------|
39-
| Azure App Service | Best practices for deploying an app to Azure App Service | azure-appservice |
40-
| Azure Spring Apps | Best practices for deploying an app to Azure Spring Apps | azure-spring-apps |
41-
| Azure Kubernetes Service| Best practices for deploying an app to Azure Kubernetes Service | azure-aks |
42-
| Azure Container Apps | Best practices for deploying an app to Azure Container Apps | azure-container-apps|
43-
| Cloud Readiness | General best practices for making an application Cloud (Azure) ready | cloud-readiness |
44-
| Discovery | Identifies technology usage such as libraries and frameworks | discovery |
45-
| Linux | General best practices for making an application Linux ready | linux |
46-
| OpenJDK 11 | General best practices for running a Java 8 application with Java 11 | openjdk11 |
47-
| OpenJDK 17 | General best practices for running a Java 11 application with Java 17 | openjdk17 |
48-
| OpenJDK 21 | General best practices for running a Java 17 application with Java 21 | openjdk21 |
38+
| Target | Description | ID |
39+
|--------------------------|------------------------------------------------------------------------|------------------------|
40+
| Azure App Service | Best practices for deploying an app to Azure App Service. | `azure-appservice` |
41+
| Azure Spring Apps | Best practices for deploying an app to Azure Spring Apps. | `azure-spring-apps` |
42+
| Azure Kubernetes Service | Best practices for deploying an app to Azure Kubernetes Service. | `azure-aks` |
43+
| Azure Container Apps | Best practices for deploying an app to Azure Container Apps. | `azure-container-apps` |
44+
| Cloud Readiness | General best practices for making an application Cloud (Azure) ready. | `cloud-readiness` |
45+
| Discovery | Identifies technology usage such as libraries and frameworks. | `discovery` |
46+
| Linux | General best practices for making an application Linux ready. | `linux` |
47+
| OpenJDK 11 | General best practices for running a Java 8 application with Java 11. | `openjdk11` |
48+
| OpenJDK 17 | General best practices for running a Java 11 application with Java 17. | `openjdk17` |
49+
| OpenJDK 21 | General best practices for running a Java 17 application with Java 21. | `openjdk21` |
4950

50-
When assessing for Cloud Readiness and related Azure services, the report may also include useful information for potential usage of different Azure services. Below we provide a list of a few services that are covered.
51+
When the tool assesses for Cloud Readiness and related Azure services, it can also report useful information for potential usage of different Azure services. The following list shows a few of the services covered:
5152

5253
* Azure Databases
5354
* Azure Service Bus
5455
* Azure Storage
55-
* Azure CDN
56+
* Azure Content Delivery Network
5657
* Azure Event Hubs
5758
* Azure Key Vault
5859
* Azure Front Door
@@ -72,7 +73,7 @@ The `appcat` CLI is available for download as a ZIP file from [aka.ms/appcat/azu
7273

7374
- [Azure Migrate application and code assessment for Java 6.3.0.7](https://aka.ms/appcat/azure-migrate-appcat-for-java-cli-6.3.0.7-preview.zip)
7475

75-
### Get started with `appcat`
76+
### Get started with appcat
7677

7778
Unzip the zip file in a folder of your choice. You then get the following directory structure:
7879

@@ -116,7 +117,7 @@ The following guides provide the main documentation for `appcat` for Java:
116117

117118
## Discover technology usage and Cloud readiness without an Azure service in mind
118119

119-
Discovery of technologies and Cloud readiness targets provide great insight into application replatform and modernization to the Cloud. The tool will scan the application and its components to gain a comprehensive understanding of its structure, architecture, and dependencies, as well as potential issues that may be challenging in a Cloud environment. The `discovery` target in particular is used to create a detailed inventory of the application and its components (see the [Discovery report](#discovery-report) section), which serves as the basis for further analysis and planning.
120+
Discovery of technologies and Cloud readiness targets provide great insight into application replatform and modernization to the Cloud. The tool scans the application and its components to gain a comprehensive understanding of its structure, architecture, and dependencies. It also finds potential issues that might be challenging in a Cloud environment. The `discovery` target in particular is used to create a detailed inventory of the application and its components. This inventory serves as the basis for further analysis and planning. For more information, see the [Discovery report](#discovery-report) section.
120121

121122
Use the following command to initiate discovery and cloud readiness:
122123

@@ -128,21 +129,21 @@ Use the following command to initiate discovery and cloud readiness:
128129

129130
This type of report is useful when you don't have a specific Azure service in mind to deploy your application to.
130131

131-
The `discovery` is always performed by the tool whether or not it is included in the `--target` parameter.
132+
The tool always performs the `discovery` whether or not you include that value in the `--target` parameter.
132133

133134
## Assess a Java application
134135

135136
The *assessment* phase is where the `appcat` CLI analyzes the application and its components to determine its suitability for replatorming and to identify any potential challenges or limitations. This phase involves analyzing the application code and checking its compliance with the selected targets.
136137

137-
Multiple targets may be selected in a space-delimited list of values to the `--target` argument.
138+
You can select multiple targets by using a space-delimited list of values with the `--target` argument.
138139

139140
To check the available targets, run the following command:
140141

141142
```bash
142143
./appcat --listTargetTechnologies
143144
```
144145

145-
This command produces an output similar to the following example:
146+
This command produces output similar to the following example:
146147

147148
```output
148149
Available target technologies:
@@ -183,11 +184,11 @@ Whenever you assess an application for Azure deployment, we recommend you start
183184
- `discovery`
184185
- `cloud-readiness`
185186

186-
In addition to these, specify an Azure service in mind for deployment, such as `azure-appservice` or `azure-container-apps`.
187+
Also, specify an Azure service for deployment, such as `azure-appservice` or `azure-container-apps`.
187188

188189
If you intend to move an application from a Windows environment into a Linux VM or container, we recommend you also add the `linux` target.
189190

190-
If you intend to move an application from an older version of the JDK to a newer version, we recommend you pick the next major version compared to the previous version in use by the application. For example, `openjdk11` when your application is currently deployed with Java 8.
191+
If you intend to move an application from an older version of the JDK to a newer version, we recommend that you pick the next major version compared to the previous version in use by the application. For example, use `openjdk11` when your application is currently deployed with Java 8.
191192

192193
## Get results from appcat
193194

@@ -311,11 +312,11 @@ The complete guide for Rules Development is available at [azure.github.io/appcat
311312

312313
### 6.3.0.8
313314

314-
- Previously, a set of targets were enabled by default, making it difficult for certain customers to assess large applications with too many incidents related to less critical issues. To reduce noise in reports, users must now specify multiple targets, with the parameter `--target`, when executing `appcat`, giving them the option to select only the targets that matter.
315+
Previously, a set of targets were enabled by default, making it difficult for certain customers to assess large applications with too many incidents related to less critical issues. To reduce noise in reports, users must now specify multiple targets, with the parameter `--target`, when executing `appcat`, giving them the option to select only the targets that matter.
315316

316317
### 6.3.0.7
317318

318-
- GA (Generally Available) release of Azure Migrate application and code assessment.
319+
GA (Generally Available) release of Azure Migrate application and code assessment.
319320

320321
## License
321322

@@ -343,7 +344,7 @@ Q: Where can I get some help when creating custom rules?
343344

344345
The best way to get help is to [create an issue on the appcat-rulesets GitHub repository](https://github.com/azure/appcat-rulesets/issues).
345346

346-
## Next steps
347+
## Related content
347348

348349
* [CLI usage guide](https://azure.github.io/appcat-docs/cli/)
349350
* [Rules development guide](https://azure.github.io/appcat-docs/rules-development-guide/)

0 commit comments

Comments
 (0)