You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: articles/migrate/appcat/java-preview.md
+42-47Lines changed: 42 additions & 47 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -11,7 +11,7 @@ ms.date: 01/15/2025
11
11
#customer intent: As a developer, I want to assess my Java application so that I can understand its readiness for migration to Azure.
12
12
---
13
13
14
-
# Azure Migrate application and code assessment for Java version 7 (Preview)
14
+
# Azure Migrate application and code assessment for Java version 7 (preview)
15
15
16
16
> [!NOTE]
17
17
> This article is for the next generation of *Azure Migrate application and code assessment for Java*, version 7.x. This version is in preview. For the previous stable version, version 6.x, see [Azure Migrate application and code assessment for Java](./java.md).
@@ -60,9 +60,7 @@ When the tool assesses for Cloud Readiness and related Azure services, it can al
60
60
61
61
## Download and Install
62
62
63
-
To use the `appcat` CLI, you must download the package specific to your environment, and have the required dependencies in your environment.
64
-
The `appcat` CLI runs on any environment such as Windows, Linux, or Mac, using Intel, Arm, or Apple Silicon hardware.
65
-
For the JDK requirement, we recommend you use the [Microsoft Build of OpenJDK](/java/openjdk).
63
+
To use the `appcat` CLI, you must download the package specific to your environment, and have the required dependencies in your environment. The `appcat` CLI runs on any environment such as Windows, Linux, or Mac, using Intel, Arm, or Apple Silicon hardware. For the JDK requirement, we recommend you use the [Microsoft Build of OpenJDK](/java/openjdk).
66
64
67
65
| OS | Architecture | Download Link | Other files |
@@ -96,7 +94,7 @@ For the JDK requirement, we recommend you use the [Microsoft Build of OpenJDK](/
96
94
97
95
### Prerequisites
98
96
99
-
-[Download](/java/openjdk/download#openjdk-17) and [install Microsoft Build of OpenJDK 17](/java/openjdk/install). Ensure that the **JAVA_HOME** environment variable is set.
97
+
-[Download](/java/openjdk/download#openjdk-17) and [install Microsoft Build of OpenJDK 17](/java/openjdk/install). Ensure that the `JAVA_HOME` environment variable is set.
100
98
-[Download Apache Maven](https://maven.apache.org/download.cgi) and [install locally](https://maven.apache.org/install.html). Ensure that the Maven binary (`mvn`) is reachable through `PATH` environment variable.
101
99
102
100
### Installation
@@ -120,12 +118,12 @@ Extract the binary from the downloaded file. You should see the following folder
120
118
└── readme.html
121
119
```
122
120
123
-
### Running the tool
121
+
### Run the tool
124
122
125
-
To run the `appcat` from any location in your terminal, extract the archive to your desired location, for example, `~/.appcat` on Linux/Mac or `%USERPROFILE%\.appcat` on Windows, then update the `PATH` environment variable to include the directory where you extracted the archive.
123
+
To run `appcat` from any location in your terminal, extract the archive to your desired location - for example, **~/.appcat** on Linux/Mac or **%USERPROFILE%\.appcat** on Windows. Then, update the `PATH` environment variable to include the directory where you extracted the archive.
126
124
127
125
> [!NOTE]
128
-
> When the `appcat` binary is called, it first looks for its dependencies in the executable folder specified in the `PATH` environment variable. If the dependencies aren't found, it falls back to the user's home directory - `~/.appcat` on Linux/Mac or `%USERPROFILE%\.appcat` on Windows.
126
+
> When the `appcat` binary is called, it first looks for its dependencies in the executable folder specified in the `PATH` environment variable. If the dependencies aren't found, it falls back to the user's home directory - **~/.appcat** on Linux/Mac or **%USERPROFILE%\.appcat** on Windows.
129
127
130
128
## Usage
131
129
@@ -137,7 +135,7 @@ AppCAT provides two subcommands for usage:
137
135
-`transform`: Convert XML rules from previous versions (6 and older) to YAML format used by this version.
138
136
139
137
> [!NOTE]
140
-
> For macOS users: If you encounter an error stating "Apple could not verify" when trying to run the app, you can resolve this error by using the following command:
138
+
> For macOS users: If you encounter an error stating `Apple could not verify` when trying to run the app, you can resolve this error by using the following command:
@@ -151,9 +149,9 @@ AppCAT provides two subcommands for usage:
151
149
152
150
#### Analyze subcommand
153
151
154
-
The `analyze` subcommand allows you to run source code and binary analysis.
152
+
The `analyze` subcommand enables you to run source code and binary analysis.
155
153
156
-
To analyze application source code, run the following command:
154
+
To analyze application source code, use the following command:
157
155
158
156
# [Linux / macOS](#tab/linux)
159
157
@@ -171,7 +169,7 @@ To analyze application source code, run the following command:
171
169
172
170
The `--input` flag must point to a source code directory or a binary file, and `--output` must point to a directory to store the analysis results.
173
171
174
-
For more information on the analyze flags, run the following command:
172
+
For more information on the analyze flags, use the following command:
175
173
176
174
# [Linux / macOS](#tab/linux)
177
175
@@ -187,7 +185,7 @@ For more information on the analyze flags, run the following command:
187
185
188
186
---
189
187
190
-
To check the available targets for AppCAT, run the following command:
188
+
To check the available targets for AppCAT, use the following command:
191
189
192
190
# [Linux / macOS](#tab/linux)
193
191
@@ -217,59 +215,56 @@ openjdk17
217
215
openjdk21
218
216
```
219
217
220
-
#### Analyzing Multiple Applications
218
+
#### Analyzing multiple applications
221
219
222
-
AppCAT supports multiple applications analysis in per command execution.
223
-
You can provide a comma-separated list of input paths for the `--input` flag to analyze multiple applications in a single command.
224
-
The output directory and static report will include the combined analysis results for all applications.
220
+
AppCAT supports multiple application analysis in per command execution. You can provide a comma-separated list of input paths for the `--input` flag to analyze multiple applications in a single command. The output directory and static report include the combined analysis results for all applications.
225
221
226
-
To analyze multiple applications, run the following command:
222
+
To analyze multiple applications, use the following command:
AppCAT also allows you to use `--bulk` option to incrementally add more application analysis to an existing output directory and static report.
243
-
When using the `--bulk` option, you must use it consistently across all command executions that write to the same output.
238
+
AppCAT also enables you to use `--bulk` option to incrementally add more application analysis to an existing output directory and static report. When you use the `--bulk` option, you must use it consistently across all command executions that write to the same output.
244
239
245
240
> [!NOTE]
246
-
> When multiple input paths are provided, `--bulk` is enabled by default.
241
+
> When you provide multiple input paths, `--bulk` is enabled by default.
247
242
248
-
To incrementally add more application analysis to an existing static report, run the following command:
243
+
To incrementally add more application analysis to an existing static report, use the following command:
The `transform` subcommand allows you to convert the previous `appcat` XML rules used in the 6.x version into the new YAML format used by this version 7.x.
265
+
The `transform` subcommand enables you to convert the previous `appcat` XML rules used in the 6.x version into the new YAML format used by this version 7.x.
271
266
272
-
To transform rules, run the following command:
267
+
To transform rules, use the following command:
273
268
274
269
# [Linux / macOS](#tab/linux)
275
270
@@ -356,20 +351,20 @@ Then, for each file or class affected by the incident, you can jump into the sou
356
351
357
352
This release contains the following fixes and enhancements.
358
353
359
-
- The `--input` flag now accepts multiple values, allowing you to analyze multiple applications in a single command execution.
354
+
- The `--input` flag now accepts multiple values, enabling you to analyze multiple applications in a single command execution.
360
355
- The static report categorizes its issue list for better readability.
361
-
-AppCAT can now be installed in directories other than the user’s home directory.
356
+
-Users can now install AppCAT in directories other than the user's home directory.
362
357
- Fixed an issue where running `analyze` with both `--bulk` and `--skip-static-report` failed to generate multiple output files.
363
358
- Resolved a failure when analyzing with `--bulk` and `--rules` if no Java provider was launched.
364
-
- Fixed an issue where analysis would fail if a specified package was not found when using the `--packages` flag.
365
-
- The `--exclude-paths` flag has been deprecated. To exclude files or directories, use a `.appcat-ignore` file (supporting glob patterns) placed in the input directory or installation directory.
359
+
- Fixed an issue where analysis would fail if a specified package wasn't found when using the `--packages` flag.
360
+
- The `--exclude-paths` flag is deprecated. To exclude files or directories, use a **.appcat-ignore** file - supporting glob patterns - placed in the input directory or installation directory.
366
361
367
362
### 7.6.0.4
368
363
369
364
This release contains the following fixes and enhancements.
370
365
371
366
- Supports telemetry collection. Use the `--disable-telemetry` flag to disable telemetry.
372
-
- Refactors the CLI command format to make it more clear.
367
+
- Refactors the CLI command format to make it clearer.
373
368
- Updates the `--source` flag, changing from `--source <source1> --source <source2> ...` to `--source <source1>,<source2>,...`
374
369
- Updates the `--target` flag, changing from `--target <target1> --target <target2> ...` to ` --target <target1>,<target2>,...`
375
370
- Updates the `--rules` flag, changing from `--rules <rule1> --rules <rule2> ...` to `--rules <rule1>,<rule2>,...`
@@ -402,8 +397,8 @@ This release contains the following fixes and enhancements.
402
397
-`--analyze-known-libraries` flag: Now works on Windows.
403
398
- Directory cleanup: Extra directories created during analysis on Windows are now automatically cleaned up.
404
399
-`--json-output` flag: Now operational.
405
-
- Rules parsing error: The error `unable to parse all the rules for ruleset`has been resolved.
406
-
- Insights tab descriptions: Missing rule descriptions have been added.
400
+
- Rules parsing error: The error `unable to parse all the rules for ruleset`is resolved.
401
+
- Insights tab descriptions: Missing rule descriptions are now present.
407
402
- Internet connection dependency: Analysis no longer fails without an internet connection.
408
403
-`--context-lines` flag: Now behaves as expected when set to 0.
409
404
- Removed Python requirement to run the tool.
@@ -458,7 +453,7 @@ Previously, a set of targets were enabled by default, making it difficult for ce
458
453
459
454
GA (Generally Available) release of Azure Migrate application and code assessment.
460
455
461
-
## Known Issues
456
+
## Known issues
462
457
463
458
### 7.6.0.5
464
459
@@ -483,7 +478,7 @@ GA (Generally Available) release of Azure Migrate application and code assessmen
483
478
- Analyzing WAR files on Windows produces the following error: `Failed to Move Decompiled File`. An error occurs when analyzing WAR files on Windows, which is responsible for a few redundant incidents created on Windows OS.
484
479
- Error in Watcher Error channel on Windows: `Windows system assumed buffer larger than it is, events have likely been missed`. This error message appears on the command line during long-running jobs on Windows.
485
480
- <kbd>Ctrl</kbd>+<kbd>C</kbd> fails to stop ongoing analysis. To work around, manually terminate the process by explicitly killing the process.
486
-
- In binary analysis reports, the code snippet title shows an incorrect or non-existent file path.
481
+
- In binary analysis reports, the code snippet title shows an incorrect or nonexistent file path.
487
482
488
483
### 7.6.0.2
489
484
@@ -494,7 +489,7 @@ GA (Generally Available) release of Azure Migrate application and code assessmen
494
489
- Analyzing WAR files on Windows produces the following error: `Failed to Move Decompiled File`. An error occurs when analyzing WAR files on Windows, which is responsible for a few redundant incidents created on Windows OS.
495
490
- Error in Watcher Error channel on Windows: `Windows system assumed buffer larger than it is, events have likely been missed`. This error message appears on the command line during long-running jobs on Windows.
496
491
- <kbd>Ctrl</kbd>+<kbd>C</kbd> fails to stop ongoing analysis. To work around, manually terminate the process by explicitly killing the process.
497
-
- In binary analysis reports, the code snippet title shows an incorrect or non-existent file path.
492
+
- In binary analysis reports, the code snippet title shows an incorrect or nonexistent file path.
498
493
499
494
### 7.6.0.1
500
495
@@ -505,7 +500,7 @@ GA (Generally Available) release of Azure Migrate application and code assessmen
505
500
- Analyzing WAR files on Windows produces the following error: `Failed to Move Decompiled File`. An error occurs when analyzing WAR files on Windows, which is responsible for a few redundant incidents created on Windows OS.
506
501
- Error in Watcher Error channel on Windows: `Windows system assumed buffer larger than it is, events have likely been missed`. This error message appears on the command line during long-running jobs on Windows.
507
502
- <kbd>Ctrl</kbd>+<kbd>C</kbd> fails to stop ongoing analysis. To work around, manually terminate the process by explicitly killing the process.
508
-
- In binary analysis reports, the code snippet title shows an incorrect or non-existent file path.
503
+
- In binary analysis reports, the code snippet title shows an incorrect or nonexistent file path.
509
504
510
505
### 7.6.0.0
511
506
@@ -527,14 +522,14 @@ GA (Generally Available) release of Azure Migrate application and code assessmen
527
522
- Error in **Watcher Error** channel on Windows: `Windows system assumed buffer larger than it is, events have likely been missed`. This error message appears on the command line during long-running jobs on Windows.
528
523
- This release requires an active internet connection for dependency analysis.
529
524
- <kbd>Ctrl</kbd>+<kbd>C</kbd> fails to stop ongoing analysis. To work around, manually terminate the process by explicitly killing the process.
530
-
- When the flag `--context-lines` is set to a number 0, it doesn't work as expected. This flag allows the user to limit how much of the source code should appear on the report. Setting to a value 0 might not work as expected.
525
+
- When the flag `--context-lines` is set to a number 0, it doesn't work as expected. This flag enables the user to limit how much of the source code should appear on the report. Setting to a value 0 might not work as expected.
531
526
532
527
## License
533
528
534
529
Azure Migrate application and code assessment for Java is a free, open source-based tool.
535
530
536
531
## Data collection
537
532
538
-
AppCAT collects telemetry data by default. Microsoft aggregates collected data to identify patterns of usage to identify common issues and to improve the experience of AppCAT CLI. Microsoft AppCAT CLI doesn't collect any private or personal data. For example, the usage data helps identify issues such as commands with low success rate and helps prioritize our work.
533
+
AppCAT collects telemetry data by default. Microsoft aggregates collected data to identify patterns of usage to identify common issues and to improve the experience of the AppCAT CLI. The Microsoft AppCAT CLI doesn't collect any private or personal data. For example, the usage data helps identify issues such as commands with low success rate. This information helps us prioritize our work.
539
534
540
-
While we appreciate the insights this data provides, we also understand that not everyone wants to send usage data. You can disable data collection with the `appcat analyze --disable-telemetry` command. You can also read our [privacy statement](https://www.microsoft.com/privacy/privacystatement) to learn more.
535
+
While we appreciate the insights this data provides, we also understand that not everyone wants to send usage data. You can disable data collection by using the `appcat analyze --disable-telemetry` command. For more information, see our [privacy statement](https://www.microsoft.com/privacy/privacystatement).
0 commit comments