Open Source License Checker 2.0 User Manual

go to ReadMe


Table of Contents:
  1. Starting the Application
    1. Start Command Line Operation
    2. Start GUI Application
  2. Commandline Guide
  3. GUI Guide
    1. Open a Source file / Directory / Source package
    2. The Summary Pane
    3. The Source Tree Browser Pane
    4. The File Display Pane
    5. Other Options
  4. Java VM Settings
  5. License Matching Algorithm
  6. License Naming Convention

1. Starting the Application

1.1 Start Command Line Operation

  1. Under Windows:

    click Start -> click Run -> input cmd and click OK

    go to the directory where you unpack the downloaded package:

    in command line type oslc2cli, then press enter. For example: oslc2cli -r test_sources.zip

    or type java -jar oslc2.jar [arguments] then press enter. Run with "-h" argument to see the commandline help screen

  2. Under Linux or MAC:

    Start a terminal screen

    go to the directory where you unpack the downloaded package

    type ./oslc2cli then press enter. For example: ./oslc2cli -r test_sources.zip

    or type java -jar oslc2.jar [arguments] then press enter. Run with "-h" argument to see the commandline help screen

Back to Top

1.2 Start GUI Application

  1. Under Windows

    go to the directory where you unpack the downloaded package, and double click oslc2gui.bat

    or type java -jar oslc2.jar, then press enter

  2. Under Linux or MAC

    Start a terminal screen

    go to the directory where you unpack the downloaded package

    type ./oslc2gui, then press enter

    or type java -jar oslc2.jar, then press enter

Back to Top

2. Commandline Guide

Basic usage: oslc2cli.bat [options] [source file / directory / file package]

Current supported package types: zip, jar, tar, tar.gz, tgz



Option Description
-h List all the command line options (help text)
-r Output file references
-s Show a summary of found licenses
-t Show found tags
-v Verbose mode for output
-v -v More verbose mode for output
-x PATH: ignore PATH inside package (if your package has a directory 'docs/', use "-x docs" to ignore it from processing)

Back to Top

3. GUI Guide

3.1 Open a Source file / Directory / Source package

The source file can be opened in 2 ways:

Open a source file, a directory, or a package

Open a source file, a directory, or a package

Back to Top

3.2 The Summary Pane

After opening a source package, the Overview pane shows the summary of the package

The Summary window with detailed information

Click on Details, then the summary window prompts with the following information:

The detailed information on the license match

The detailed information on the license conflicts

Back to Top

3.3 The Source Tree Browser Pane

The source file pane

The filter list box contains the filtering options to display the source tree and its related information:

Indication of license conflicts

Show References - when this option is selected, the source file imports and includes are displayed in the source tree.

In Java source file view:

Back to Top

3.4 The File Display Pane

The file display pane provides the following features:

When Details is available, click on it to see detailed information in the prompt window.

The detailed matching information as color to matched license, etc

The free form field, such as author and year, is indentified and displayed

To close a tab or print a file, right click on the tab

Options for printing the file, or closing the tab

Back to Top

3.5 Other Options

File Operations:

File operation options

View Options:

displaying the overview pane, and wordwrap option in displaying the files

Help Pages:

The Help page and About for this application

Back to Top

4. Java VM Settings

When processing large software packages (tens of thousands of files), it might be usefull to increase the memory allocated for Java virtual machine.

Memory allocation can be set by following arguments:

java -Xms150M -Xmx150M

Where 150 can be increased if necessary.

Back to Top

5. License Matching Algorithm

The program finds license matches by identifying the longest common substring between source file's comments and a known license text. A match is reported to the user if it is length is longer that 10 words and 10% of the license text and if a better match in some other license is not overlapping the match. Non-alphanumeric characters are ignored in license matching. Match confidence-% is calculated by dividing the match length by license text length.

Forbidden phrases (identified by -f in the license name) are reported if they have a full (100%) match. They are not reported if all licenses found in the file contain the forbidden phrase as part of their normal license text.

Exceptions to a license (identified by -m in the license name) are reported if exception text is found and if the parent license is also found in a same source file.

Back to Top

6. License Naming Convention

License files must follow the naming convention below to make itself correctly recognized:

name [-version] [-only|]-[l|s|m|f|k][-module_name].[txt|meta]


where:

only = usage of future versions of the license is not permitted (for example: gpl-2.0-only)

s = short version of the license text (typically located inside source files)

m = file contains a license module (exception)

f = file contains a forbidden phrase

k = file contains a linux kernel-specific license

Back to Top