dependency-check-cli

Copyright (c) 2013 Jeremy Long. All Rights Reserved.

The licenses for the software listed below can be found in the licenses.

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

This product includes software developed by Jquery.com (http://jquery.com/).

This product includes software developed by Jonathan Hedley (jsoup.org)

This software contains unmodified binary redistributions for H2 database engine (http://www.h2database.com/), which is dual licensed and available under a modified version of the MPL 1.1 (Mozilla Public License) or under the (unmodified) EPL 1.0 (Eclipse Public License).
An original copy of the license agreement can be found at: http://www.h2database.com/html/license.html

This product includes data from the Common Weakness Enumeration (CWE): http://cwe.mitre.org/

This product downloads and utilizes data from the National Vulnerability Database hosted by NIST: http://nvd.nist.gov/download.cfm