BlueJ makes use of, and distributes with it, several third party libraries which
are made available under different license conditions.

Copies of various licenses can be found in the "thirdpartylicenses" directory/folder
within the BlueJ distribution.

Contents:
1. Copyright notices
2. Libraries used and their licenses
3. Licenses for code not part of libraries
4. Summary of jar files and licenses


1. COPYRIGHT NOTICES
====================

Licenses of third-party software used in BlueJ require the following notices be present in
the BlueJ documentation:


Apache HttpComponents Client
Copyright 1999-2011 The Apache Software Foundation

Apache Commons Logging
Copyright 2003-2013 The Apache Software Foundation

This product includes software developed at
The Apache Software Foundation (http://www.apache.org/).

This project contains annotations derived from JCIP-ANNOTATIONS
Copyright (c) 2005 Brian Goetz and Tim Peierls. See http://www.jcip.net

This product includes software developed by
CollabNet (http://www.Collab.Net/).



2. LIBRARIES AND THEIR LICENSES
===============================

The following is a list of the libraries used in BlueJ, and their licenses:

Apache Commons libraries (Apache License version 2.0)
-----------------------------------------------------
Various components of the Apache Commons libraries (https://commons.apache.org/) are
used by BlueJ:
  commons-logging-api-1.1.2.jar
These components are distributed under the Apache License version 2.0. A copy of this
license can be found in the "Apache-License-2.0.txt" file.  


Apache HttpComponents library (Apache License version 2.0)
----------------------------------------------------------
Various components of the Apache HttpComponents library (https://hc.apache.org/) are
used by BlueJ:
  httpclient-4.1.1.jar
  httpcore-4.1.1.jar
  httpmime-4.1.1.jar 
These components are distributed under the Apache License version 2.0. A copy of this
license can be found in the "Apache-License-2.0.txt" file.  

 
ClassGraph library (MIT License)
--------------------------------
"classgraph-4.8.90.jar" is from the ClassGraph library, which allows scanning of Java
libraries for a list of present classes.  It is released by Luke Hutchison under
the MIT License, and is available at https://github.com/classgraph/classgraph


Diffutils (Apache License version 2.0)
--------------------------------------
"diffutils-1.2.1.jar" is from the Diff Utils library, for computing diffs (deltas) between
text files. It is used by BlueJ for (opt-in) data collection purposes. More information on
this library can be found on the Google Code page for the project:

https://code.google.com/p/java-diff-utils/

The library is distributed under the Apache License version 2.0, as found in the
"Apache-License-2.0.txt" file.


Generics Resolver library (MIT License)
--------------------------------
"generics-resolver-2.0.1.jar", the Java generics runtime resolver, helps with generic
types in type metadata.  It is released by Vyacheslav Rusakov under
the MIT License, and is available at https://github.com/xvik/generics-resolver


Guava - Google Core library (Apache License version 2.0)
--------------------------------------------------------
"guava-17.0.jar" is from the Google Core libraries for Java
(https://github.com/google/guava) which BlueJ uses.
It is distributed under the Apache License version 2.0, as found in the
"Apache-License-2.0.txt" file.


Hamcrest (3-clause BSD license)
-------------------------------
"hamcrest-core-1.3.jar" and "hamcrest-library-1.3.jar" are part of the Hamcrest libary
(http://hamcrest.org/JavaHamcrest/) and is a dependency of JUnit, which
is used by BlueJ.
It is available under the "3 clause BSD" license as found in the
"hamcrest-BSD.txt" file.

JavaRuntype library (Apache License version 2.0)
-----------------------------------------
"javaruntype-1.3.jar", the JavaRuntype library is a library providing metadata for
the Java type system.  It is a dependency of JUnit-Quickcheck.  The library is distributed under
the Apache License version 2.0, as found in the "Apache-License-2.0.txt" file.

JGit library (Eclipse Distribution License version 1.0)
-------------------------------------------------------
"org.eclipse.jgit-4.9.0.jar" is part of the JGit library (https://eclipse.org/jgit/) used by BlueJ for
Git support. It is distributed under the terms of the Eclipse Distribution License,
as found in the "EDL-v1.0.txt" file.


JSch Java Secure Channel (BSD-style license)
--------------------------------------------------
"jsch-0.1.53.jar" provides a pure java implementation of SSH2 for JGit library, 
which is used by Bluej. It is distributed under the terms of a BSD-style license, 
as found in the "jsch-BSD.txt" file.


JUnit (Eclipse Public License v2.0)
----------------------------------
"junit-*.jar" are part of the JUnit unit testing library (http://junit.org/) which is
used by BlueJ. It is distributed under the terms of the Eclipse Public License
version 2.0, as found in the "EPL-v2.0.txt" file.

JUnit QuickCheck (MIT License)
------------------------------
"junit-quickcheck-core-0.8.2.jar", the JUnit QuickCheck library, provides QuickCheck-style
property based testing for Java, by building on top of Java.  It is distributed
under the MIT License and is available from https://github.com/pholser/junit-quickcheck

NSMenuFX library (3-clause BSD license)
---------------------------------------
"nsmenufx-2.1.8.jar", the NSMenuFX library (https://github.com/0x4a616e/NSMenuFX),
is a library to customize the OS X menu bar when it is on FX to be able to customize
the auto-generated application menu. This version is distributed under the terms of
the BSD license as found in the "nsmenufx-BSD.txt" file.

OGNL library (Apache License version 2.0)
-----------------------------------------
"ognl-3.1.12.jar", the OGNL library is a library supporting a small DSL for object
queries.  It is a dependency of JUnit-Quickcheck.  The library is distributed under
the Apache License version 2.0, as found in the "Apache-License-2.0.txt" file.

OpenTest4J (Apache License version 2.0)
-----------------------------------------------------
"opentest4j-1.2.0.jar" is a utility library used by JUnit 5.
The library is distributed under the Apache License version 2.0. A copy of this
license can be found in the "Apache-License-2.0.txt" file.


WellBehavedFX (2-clause BSD licenses)
----------------------------------------------------------------------
"wellbehavedfx-0.3.3.jar" is the WellBehavedFX library (https://github.com/FXMisc/WellBehavedFX).
The license is found in the "TomasMikula-BSD.txt" file.


Roboto Mono fonts (Apache License version 2.0)
----------------------------------------------
"RobotoMono-{Bold,BoldItalic,Italic,Regular}.ttf", the Roboto Mono font, is used in the Java
editor. It is distributed under the terms of the Apache License version 2.0, as found in the
"Apache-License-2.0.txt" file.


SLF4J Simple Logging Facade for Java (MIT license)
--------------------------------------------------
"slf4j-api-1.7.2.jar" and "slf4j-jdk14-1.7.2.jar" provides logging capabilities
for JGit library, is used by Bluej. It is distributed under the terms of a MIT
license, as found in the "slf4j-MIT.txt" file.


Source Sans Pro fonts (SIL Open Font License version 1.1)
---------------------------------------------------------
"SourceSansPro-{Bold,BoldItalic,Italic,Regular}.ttf", the Source Sans Pro font, is used
in the Stride editor. It is distributed under the terms of the SIL Open Font License
as found in the "SIL-OFL-1.1.txt" file.


TestFX library (EUPL)
---------------------
TestFX (testlib/testfx-{core,junit}-4.0.15-alpha.jar) is distributed under
the EU Public Licence.  The licence can be found in the "testfx-EUPL.txt" file.


XOM XML Object Modeller library (Lesser GNU Public License v2.1)
----------------------------------------------------------------
"xom-1.3.7.jar" comprises the XOM library (http://www.cafeconleche.org/XOM/), used
by BlueJ. It is distributed under the terms of the LGPL v2.1, as found in the
"GNU-LGPL-v2.1.txt" file.



3. LICENSES FOR CODE NOT PART OF LIBRARIES


The Damerau-Levenshtein algorithm in bluej.utility.DamerauLevenshteinAlgorithm has
the following licence:

Copyright (c) 2012 Kevin L. Stern

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

4. SUMMARY OF THIRD-PARTY JAR FILES AND LICENSES

commons-logging-api-1.1.2.jar            Apache License v2.0
classgraph-4.8.90.jar                     MIT License
diffutils-1.2.1.jar                      Apache License v2.0
generics-resolver-2.0.1.jar              MIT License
guava-17.0.jar                           Apache License v2.0
hamcrest-core-1.3.jar                    BSD License
httpclient-4.1.1.jar                     Apache License v2.0
httpcore-4.1.jar                         Apache License v2.0
httpmime-4.1.1.jar                       Apache License v2.0
javaruntype-1.3.jar                      Apache License v2.0
jsch-0.1.53.jar                          BSD License
junit-quickcheck-core-0.8.2.jar          MIT License
nsmenufx-2.1.8.jar                       BSD license
ognl-3.1.12.jar                          Apache License v2.0
org.eclipse.jgit-4.9.0.jar               Eclipse Distribution License (EDL) v1.0
wellbehavedfx-0.3.3.jar                 BSD License
slf4j-api-1.7.2.jar                      MIT License
slf4j-jdk14-1.7.2.jar                    MIT License
sqljet-1.1.10.jar                        TMate Open Source License
xom-1.3.7.jar                            Lesser GPL v2.1
