EnglishFrenchSpanish

Ad


OnWorks favicon

japi-compliance-checker - Online in the Cloud

Run japi-compliance-checker in OnWorks free hosting provider over Ubuntu Online, Fedora Online, Windows online emulator or MAC OS online emulator

This is the command japi-compliance-checker that can be run in the OnWorks free hosting provider using one of our multiple free online workstations such as Ubuntu Online, Fedora Online, Windows online emulator or MAC OS online emulator

PROGRAM:

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.4.3) 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>

...

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".

-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.

-keep-internal

Do not skip checking of these packages:

*impl* *internal* *examples* *com.oracle* *com.sun* *COM.rsa* *sun* *sunw*

-skip-internal PATTERN

Do not check internal packages matched by the pattern.

-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.

-annotations-list PATH

Specifies a file with a list of annotations. The tool will check only classes
annotated by the annotations from this list. 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.

-skip-packages PATH

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

-short PATH

Generate short report without 'Added Methods' section.

-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.

-hide-templates

Hide template parameters in the report.

-hide-packages

-minimal

Do nothing.

-show-packages

Show package names 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.

-title NAME

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

-jdk-path PATH

Path to the JDK install tree (e.g. /usr/lib/jvm/java-7-openjdk-amd64).

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.

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

Use japi-compliance-checker online using onworks.net services


Free Servers & Workstations

Download Windows & Linux apps

  • 1
    OrangeFox
    OrangeFox
    Fork of TeamWinRecoveryProject(TWRP)
    with many additional functions, redesign
    and more Features:Supports Treble and
    non-Treble ROMsUp-to-date Oreo kernel,
    built...
    Download OrangeFox
  • 2
    itop - ITSM  CMDB OpenSource
    itop - ITSM CMDB OpenSource
    IT Operations Portal: a complete open
    source, ITIL, web based service
    management tool including a fully
    customizable CMDB, a helpdesk system and
    a document man...
    Download itop - ITSM CMDB OpenSource
  • 3
    Clementine
    Clementine
    Clementine is a multi-platform music
    player and library organizer inspired by
    Amarok 1.4. It has a fast and
    easy-to-use interface, and allows you to
    search and ...
    Download Clementine
  • 4
    XISMuS
    XISMuS
    ATTENTION: Cumulative update 2.4.3 has
    been released!! The update works for any
    previous 2.x.x version. If upgrading
    from version v1.x.x, please download and
    i...
    Download XISMuS
  • 5
    facetracknoir
    facetracknoir
    Modular headtracking program that
    supports multiple face-trackers, filters
    and game-protocols. Among the trackers
    are the SM FaceAPI, AIC Inertial Head
    Tracker ...
    Download facetracknoir
  • 6
    PHP QR Code
    PHP QR Code
    PHP QR Code is open source (LGPL)
    library for generating QR Code,
    2-dimensional barcode. Based on
    libqrencode C library, provides API for
    creating QR Code barc...
    Download PHP QR Code
  • 7
    Cuckoo Sandbox
    Cuckoo Sandbox
    Cuckoo Sandbox uses components to
    monitor the behavior of malware in a
    Sandbox environment; isolated from the
    rest of the system. It offers automated
    analysis o...
    Download Cuckoo Sandbox
  • More »

Linux commands

  • 1
    acl_gran
    acl_gran
    rsbac-admin - Rule Set Based Access
    Control DESCRIPTION: rsbac-admin is a
    set of tool used to manage systems using
    a Rule Set Based Access Control (RSBAC)
    kern...
    Run acl_gran
  • 2
    acl_grant
    acl_grant
    rsbac-admin - Rule Set Based Access
    Control DESCRIPTION: rsbac-admin is a
    set of tool used to manage systems using
    a Rule Set Based Access Control (RSBAC)
    kern...
    Run acl_grant
  • 3
    cpupower-idle-set
    cpupower-idle-set
    cpupower idle-set - Utility to set cpu
    idle state specific kernel options
    SYNTAX: cpupower [ -c cpulist ]
    idle-info [options] DESCRIPTION: The
    cpupower idle-se...
    Run cpupower-idle-set
  • 4
    cpupower-info
    cpupower-info
    cpupower-info - Shows processor power
    related kernel or hardware
    configurations ...
    Run cpupower-info
  • 5
    g15daemon
    g15daemon
    g15daemon - provides access to extra
    keys and the LCD available on the
    logitech G15 keyboard. DESCRIPTION:
    G15Daemon allows users access to all
    extra keys by d...
    Run g15daemon
  • 6
    g15ladi
    g15ladi
    laditools - tools to control and
    monitor LADI (JACK and ladish) systems ...
    Run g15ladi
  • More »

Ad