<!DOCTYPE html>

<html class="no-js" lang="en" dir="ltr">
<head>
  <meta charset="utf-8">
  <meta http-equiv="x-ua-compatible" content="ie=edge">
  <title>Apache NetBeans Maven Utilities - NBM Maven Plugin &#x2013; Rat (Release Audit Tool) results</title>
  <link rel="stylesheet" href="./css/netbeans.css" />
  <link href="https://fonts.googleapis.com/css?family=Lato:400,700" rel="stylesheet">   
</head>
<body>
<div class="top-bar" id="responsive-menu">
    <div class='top-bar-left'>
        <a class='title' href="http://netbeans.apache.org"><img src='/images/apache-netbeans.svg' style='padding: 8px; height: 48px;'>Apache NetBeans (incubating)</a>
    </div>
    <div class="top-bar-right">
        <ul class="vertical medium-horizontal menu" style="right: 90px;" data-responsive-menu="drilldown medium-dropdown">
            <li> <a href="../nb-repository/index.html">NB Repository Plugin</a> </li>
            <li> <strong style='line-height: 1;margin-bottom: 0;padding: 0.7rem 1rem;display: block;' >NBM Plugin</strong> </li>
            <li> <a href="../shared/index.html">Shared</a> </li>
            <li> <a href="../parent/index.html">Parent</a> </li>
        </ul>
    </div>
</div>
<div class='grid-container main-content'>
            <div id="toc" class="toc">
<div id="toctitle">Overview</div>
<ul class="sectlevel1">
<li><a href="index.html">Usage</a></li>
<li><a href="plugin-info.html">Plugin Goals</a></li>
</ul>
<div id="toctitle">HOWTOs</div>
<ul class="sectlevel1">
<li><a href="buildinstexample.html">Customize installers</a></li>
<li><a href="upgrade.html">Upgrade from older versions</a></li>
</ul>
<div id="toctitle">Deprecated</div>
<ul class="sectlevel1">
<li><a href="nbm.html">Descriptor Format</a></li>
<li><a href="descriptor.html">Example Descriptor</a></li>
</ul>
</div>
<div id="preamble">
<div class="sectionbody">
<div class="section">
<h2><a name="Rat_.28Release_Audit_Tool.29_results"></a>Rat (Release Audit Tool) results</h2>
<p>The following document contains the results of <a class="externalLink" href="http://creadur.apache.org/rat/apache-rat-plugin/">Rat (Release Audit Tool)</a>.</p>
<p></p>
<div class="source">
<pre>
*****************************************************
Summary
-------
Generated at: 2018-11-02T16:46:01+00:00

Notes: 0
Binaries: 0
Archives: 0
Standards: 46

Apache Licensed: 46
Generated Documents: 0

JavaDocs are generated, thus a license header is optional.
Generated files do not require license headers.

0 Unknown Licenses

*****************************************************
  Files with Apache License headers will be marked AL
  Binary files (which do not require any license headers) will be marked B
  Compressed archives will be marked A
  Notices, licenses etc. will be marked N
  AL    pom.xml
  AL    README.md
  AL    src/site/resources/masterjnlp.txt
  AL    src/site/apt/descriptor.apt
  AL    src/site/apt/index.apt.vm
  AL    src/site/apt/buildinstexample.apt
  AL    src/site/apt/upgrade.apt
  AL    src/site/site.xml
  AL    src/it/pom.xml
  AL    src/it/full/application/pom.xml
  AL    src/it/full/application/src/test/java/nbmmavenpluginit/ittest/ApplicationTest.java
  AL    src/it/full/pom.xml
  AL    src/it/full/branding/pom.xml
  AL    src/it/full/branding/src/main/resources/nbmmavenpluginit/ittest/branding/Bundle.properties
  AL    src/it/full/branding/src/main/nbm-branding/core/core.jar/org/netbeans/core/startup/Bundle.properties
  AL    src/it/full/branding/src/main/nbm-branding/modules/org-netbeans-core-windows.jar/org/netbeans/core/windows/view/ui/Bundle.properties
  AL    src/it/full/branding/src/main/nbm-branding/modules/org-netbeans-core.jar/org/netbeans/core/ui/Bundle.properties
  AL    src/it/full/ittest-sample/pom.xml
  AL    src/it/full/ittest-sample/src/main/resources/nbmmavenpluginit/ittest/Bundle.properties
  AL    src/it/settings.xml
  AL    src/it/single/pom.xml
  AL    src/test/java/org/netbeans/nbm/NetBeansManifestUpdateMojoTest.java
  AL    src/test/java/org/netbeans/nbm/CreateClusterAppMojoTest.java
  AL    src/test/java/org/netbeans/nbm/AbstractNbmMojoTest.java
  AL    src/test/java/org/netbeans/nbm/BrandingMojoTest.java
  AL    src/test/java/org/netbeans/nbm/CreateNetBeansFileStructureTest.java
  AL    src/main/resources/master.jnlp
  AL    src/main/resources/branding.jnlp
  AL    src/main/resources/META-INF/plexus/components.xml
  AL    src/main/java/org/netbeans/nbm/CreateWebstartAppMojo.java
  AL    src/main/java/org/netbeans/nbm/BuildInstallersMojo.java
  AL    src/main/java/org/netbeans/nbm/AbstractNbmMojo.java
  AL    src/main/java/org/netbeans/nbm/CollectModuleLibrariesNodeVisitor.java
  AL    src/main/java/org/netbeans/nbm/CreateNetBeansFileStructure.java
  AL    src/main/java/org/netbeans/nbm/CollectLibrariesNodeVisitor.java
  AL    src/main/java/org/netbeans/nbm/NetBeansManifestUpdateMojo.java
  AL    src/main/java/org/netbeans/nbm/RunPlatformAppMojo.java
  AL    src/main/java/org/netbeans/nbm/CreateUpdateSiteMojo.java
  AL    src/main/java/org/netbeans/nbm/CreateClusterMojo.java
  AL    src/main/java/org/netbeans/nbm/RunNetBeansMojo.java
  AL    src/main/java/org/netbeans/nbm/CreateNbmMojo.java
  AL    src/main/java/org/netbeans/nbm/CreateStandaloneMojo.java
  AL    src/main/java/org/netbeans/nbm/BrandingMojo.java
  AL    src/main/java/org/netbeans/nbm/CreateClusterAppMojo.java
  AL    src/main/java/org/netbeans/nbm/AdaptNbVersion.java
  AL    src/main/mdo/descriptor.mdo
 
*****************************************************
</pre></div></div>
</div>
</div>
</div>
<div class='grid-container incubator-area' style='margin-top: 64px'>
    <div class='grid-x grid-padding-x'>
        <div class='large-auto cell text-center'>
            <a href="https://www.apache.org/">
                <img style="width: 320px" title="Apache Software Foundation" src="/images/asf_logo_wide.svg" />
            </a>
        </div>
        <div class='large-auto cell text-center'>
            <a href="https://www.apache.org/events/current-event.html">
               <img style="width:234px; height: 60px;" title="Apache Software Foundation current event" src="https://www.apache.org/events/current-event-234x60.png"/>
            </a>
        </div>
    </div>
</div>
<div class='footer-disclaimer'>
    <div class="footer-disclaimer-content">
        <p>Copyright &copy; 2017-2018 <a href="https://www.apache.org">The Apache Software Foundation</a>.</p>
        <p>Licensed under the Apache <a href="https://www.apache.org/licenses/">license</a>, version 2.0</p>
        <p><a href="https://incubator.apache.org/" alt="Apache Incubator"><img src='/images/incubator_feather_egg_logo_bw_crop.png' title='Apache Incubator'></img></a></p>
        <div style='max-width: 40em; margin: 0 auto'>
            <p>Apache NetBeans is an effort undergoing incubation at The Apache Software Foundation (ASF), sponsored by the Apache Incubator. Incubation is required of all newly accepted projects until a further review indicates that the infrastructure, communications, and decision making process have stabilized in a manner consistent with other successful ASF projects. While incubation status is not necessarily a reflection of the completeness or stability of the code, it does indicate that the project has yet to be fully endorsed by the ASF.</p>
            <p>Apache Incubator, Apache, the Apache feather logo, the Apache NetBeans logo, and the Apache Incubator project logo are trademarks of <a href="https://www.apache.org">The Apache Software Foundation</a>.</p>
            <p>Oracle and Java are registered trademarks of Oracle and/or its affiliates.</p>
        </div>
        
    </div>
</div>
<a href="https://github.com/apache/incubator-netbeans-mavenutils"><img style="position: absolute; top: 0; right: 0; border: 0;" src="https://s3.amazonaws.com/github/ribbons/forkme_right_green_007200.png" alt="Fork me on GitHub"></a>



        <script src="/js/vendor/jquery-3.2.1.min.js"></script>
        <script src="/js/vendor/what-input.js"></script>
        <script src="/js/vendor/jquery.colorbox-min.js"></script>
        <script src="/js/vendor/foundation.min.js"></script>
        <script src="/js/netbeans.js"></script>
        <script>
            
            $(function(){ $(document).foundation(); });
        </script>
</body>