1. Introduction

1.1 What is Spring Migration Analyzer?

Spring Migration Analyzer is a command-line tool that can be used to analyze Java EE applications and produce a report that describes the application and how it can be migrated to Spring.

1.2 Installation

Before installaing Spring Migration Analyzer, please ensure your system meets the following requirements:

  • A Windows, OS X or Linux operating system
  • A Java 5 or later installation, with the JAVA_HOME environment variable configured to point to it

The Spring Migration Analyzer installation is available as a zip file from the download site. Once you have downloaded the zip, Spring Migration Analyzer can be installed by unzipping it into a directory of your choice. Once unzipped, you may wish to add Spring Migration Analyzer's bin directory to your PATH.

Next, verify that Spring Migration Analyzer has been installed correctly. To do so on Windows, run the following command:

 > migration-analysis.bat

To do so on OS X and Linux, run the following command:

 > migration-analysis.sh

In both cases, you should be presented with a description of Spring Migration Analyzer and its usage information:

 Usage: migration-analysis.sh <inputPath> [OPTION]...
 
 Description:

   Produces a migration analysis report for each archive found at the specified
   input path. The input path may be either a single archive or a directory. In
   the case of a directory, the entire directory structure is examined and all
   archives that are found are analyzed. The reports are written to the output
   path with each report being written into a sub-directory with the same name as
   its input archive. For example, if my-app.ear is analyzed its report will be
   written to <outputPath>/my-app.ear.

 Options:

   -e,--exclude <excludedPaths>  Paths within the input to be excluded from the
                                 analysis. Supports Ant-style patterns and can be
                                 specified multiple times.
   -o <outputPath>               The path of the output directory. Defaults to
                                 the current working directory
   -t <outputType>               The type of the output to be created. Defaults
                                 to html.