Provided by: japi-compliance-checker_1.3.5-1_all bug

NAME

       japi-compliance-checker - Check backward compatibility of a Java library API

DESCRIPTION

   NAME:
              Java  API Compliance Checker (japi-compliance-checker) Check backward compatibility
              of a Java library API

   DESCRIPTION:
              Java  API  Compliance  Checker  (Java  ACC)  is  a  tool  for   checking   backward
              binary/source  compatibility  of  a  Java  library  API.  The  tool  checks classes
              declarations  of  old  and  new  versions  and  analyzes  changes  that  may  break
              compatibility:  removed class members, added abstract methods, etc. Breakage of the
              binary compatibility may result in  crashing  or  incorrect  behavior  of  existing
              clients built with an old version of a library if they run with a new one. Breakage
              of the source compatibility may result in recompilation errors with a  new  library
              version.

              Java  ACC  is  intended for library developers and operating system maintainers who
              are interested in ensuring backward compatibility (i.e. allow old clients to run or
              to be recompiled with a new version of a library).

              This  tool  is  free  software:  you can redistribute it and/or modify it under the
              terms of the GNU LGPL or GNU GPL.

   USAGE:
              japi-compliance-checker [options]

   EXAMPLE:
              japi-compliance-checker OLD.jar NEW.jar

              OR

              japi-compliance-checker -lib NAME -old OLD.xml -new NEW.xml OLD.xml and NEW.xml are
              XML-descriptors:

              <version>

              1.0

              </version>

              <archives>

              /path1/to/JAR(s)/ /path2/to/JAR(s)/ ...

              </archives>

   INFORMATION OPTIONS:
       -h|-help

              Print this help.

       -v|-version

              Print version information.

       -dumpversion

              Print the tool version (1.3.5) and don't do anything else.

   GENERAL OPTIONS:
       -l|-lib|-library NAME

              Library name (without version).

       -d1|-old|-o PATH

              Descriptor of 1st (old) library version.  It may be one of the following:

              1. Java ARchive (*.jar) 2. XML-descriptor (VERSION.xml file):

              <version>

              1.0

              </version>

              <archives>

              /path1/to/JAR(s)/ /path2/to/JAR(s)/

              ...

              </archives>

              ... (XML-descriptor template

              may be generated by -d option)

              3.  API  dump  generated  by  -dump option 4. Directory with Java ARchives 5. Comma
              separated list of Java ARchives 6. Comma separated list of  directories  with  Java
              ARchives

              If  you  are  using 1, 4-6 descriptor types then you should specify version numbers
              with -v1 and -v2 options too.

              If you are using *.jar as a descriptor then the tool will try to get implementation
              version from MANIFEST.MF file.

       -d2|-new|-n PATH

              Descriptor of 2nd (new) library version.

   EXTRA OPTIONS:
       -client|-app PATH

              This  option  allows  to specify the client Java ARchive that should be checked for
              portability to the new library version.

       -binary

              Show    "Binary"    compatibility    problems    only.     Generate    report    to
              "bin_compat_report.html".

       -source

              Show    "Source"    compatibility    problems    only.     Generate    report    to
              "src_compat_report.html".

       -check-impl|-check-implementation

              Compare implementation code (method's body) of Java classes.   Add  'Problems  with
              Implementation' section to the report.

       -v1|-version1 NUM

              Specify  1st  API version outside the descriptor. This option is needed if you have
              prefered an alternative descriptor type (see -d1 option).

              In general case you should specify it in the XML descriptor:

              <version>

              VERSION

              </version>

       -v2|-version2 NUM

              Specify 2nd library version outside the descriptor.

       -s|-strict

              Treat all API compatibility warnings as problems.

       -dump|-dump-api PATH

              Dump library API to gzipped TXT format file. You can transfer it anywhere and  pass
              instead  of  the descriptor. Also it may be used for debugging the tool. Compatible
              dump versions: 1.0<=V<=1.0

       -classes-list PATH

              This option allows to specify a file with a list of classes that should be checked,
              other classes will not be checked.

       -skip-deprecated

              Skip analysis of deprecated methods and classes.

       -skip-classes PATH

              This  option  allows  to  specify  a file with a list of classes that should not be
              checked.

       -short PATH

              Generate short report without 'Added Methods' section.

       -d|-template

              Create XML descriptor template ./VERSION.xml

       -report-path PATH

              Path to compatibility report.  Default:

              compat_reports/LIB_NAME/V1_to_V2/compat_report.html

       -bin-report-path PATH

              Path to "Binary" compatibility report.  Default:

              compat_reports/LIB_NAME/V1_to_V2/bin_compat_report.html

       -src-report-path PATH

              Path to "Source" compatibility report.  Default:

              compat_reports/LIB_NAME/V1_to_V2/src_compat_report.html

       -quick

              Quick analysis.  Disabled:

              - analysis of method parameter names - analysis of class field values - analysis of
              usage of added abstract methods - distinction of deprecated methods and classes

       -sort

              Enable sorting of data in API dumps.

       -show-access

              Show access level of non-public methods listed in the report.

       -limit-affected LIMIT

              The  maximum number of affected methods listed under the description of the changed
              type in the report.

   OTHER OPTIONS:
       -test

              Run internal tests. Create two incompatible versions of a sample  library  and  run
              the  tool  to check them for compatibility. This option allows to check if the tool
              works correctly in the current environment.

       -debug

              Debugging mode. Print debug info on the screen. Save intermediate  analysis  stages
              in the debug directory:

              debug/LIB_NAME/VER/

              Also consider using --dump option for debugging the tool.

       -l-full|-lib-full NAME

              Change  library  name  in  the report title to NAME. By default will be displayed a
              name specified by -l option.

       -b|-browse PROGRAM

              Open report(s) in the browser (firefox, opera, etc.).

       -open

              Open report(s) in the default browser.

   REPORT:
              Compatibility report will be generated to:

              compat_reports/LIB_NAME/V1_to_V2/compat_report.html

   EXIT CODES:
              0 - Compatible. The tool has run without any errors.  non-zero  -  Incompatible  or
              the tool has run with errors.

   REPORT BUGS TO:
              Andrey Ponomarenko <aponomarenko@rosalab.ru>

   MORE INFORMATION:
              http://ispras.linuxbase.org/index.php/Java_API_Compliance_Checker
              https://github.com/lvc/japi-compliance-checker

AUTHOR

       Written by Andrey Ponomarenko.

COPYRIGHT

       Copyright © 2013 ROSA Lab License: LGPL or GPL <http://www.gnu.org/licenses/> This program
       is free software: you can redistribute it and/or modify it.

japi-compliance-checker API Compliance CheDecemberv2013C) 1.3.5        JAPI-COMPLIANCE-CHECKER(1)