Roadmap

The following roadmap will give you an overview of the planned features and their possible implementation order. Of course i don't guarantee anything ..;-)

Release 0.3

  • Get it running on Maven 3.0
  • Change the default location of the licenses.xml file if you like to do this and don't accept the defaults.
    <configuration>
      <licenseFile>${basedir}/licenses/license.xml</licenseFile>
    </configuration>
  • Support of excluding artifacts from being checked against the licenses. This is needed cause some artifacts exist which don't define any license.
    <configuration>
      <excludes>
        <exclude>log4j:log4j:*</exclude>
        <exclude>org.apache.*:*:jar</exclude>
      </excludes>
    </configuration>

Release 0.4

Company License defined by an extra artifact.

<plugin>
  <groupId>com.soebes.maven.plugins.mlv</groupId>
  <artifactId>maven-license-verifier-plugin</artifactId>
  <version>0.4</version>
  <dependencies>
    <dependency>
      <groupId>YouCompanyPackage.licenses</groupId>
      <artifactId>licenses</artifactId>
      <version>6</version>
    </dependency>
  </dependencies>
  <configuration>
    <verbose>true</verbose>
  </configuration>
</plugin>

Release 0.5

Usage of different licenses files which can be configured in the configuration section.

Loading of multiple license files which will be summarized as they have been loaded as a single file. (Simplify maintenance)

<configuration>
  <licenseRefs>
    <licenseRef>oss-licenses.xml</licensesRef>
    <licenseRef>company-licenses.xml</licensesRef>
  </licenseRefs>
</configuration>

Release 0.6

It should be possible to define particular artifact to have a particular category. This is needed to be able to redefine an artifact without an license to be valid, invalid or warning instead of the unknown category which is automatically selected if no license information is given. Hm. Think about this, cause you can simply exclude the artifact from being checked? Is this enough?

<configuration>
  <warnings>
    <artifacts>
      <artifact>

      <artifact>
    </artifacts>
  <warnings>

  <valid>
    <artifacts>
      <artifact>
        <artifactId>log4j</artifactId>
        <groupId>log4j</groupId>
        <version>1.2.13</version>
      <artifact>
    </artifacts>
  </valid>

   <invalid>
   </invalid>
</configuration>

Release 0.7

Read different license via descriptors

<configuration>
  <descriptors>
    <descriptor>Apache-2.0</descriptor>
    <descriptor>GNU-2.0</descriptor>
    <descriptor>GNU-3.0</descriptor>
  </descriptors>
</configuration>
<configuration>
  <descriptors>
    <descriptor>OSS</descriptor> -> Contains a large list of OSS approved licenses
  </descriptors>
</configuration>

Release 0.8

  • Check not only the POM use the artifacts itself, cause it contains license information
  • The idea is to search inside the artifacts which usually contain some kind of license information for example as a single file (LICENSE or LICENSE.txt) etc.
  • An other source of information can be the MANIFEST.MF file.
  • Check the artifacts them selfs (.jar) file and search them for license.txt etc. and may be
  • bundles license entries.

Release 0.9

  • May be i find something useful before 1.0 or users have good ideas.

Release 1.0

  • Tata ;-)

Idea

  • Define an particular artifact to be assigned to be having a License. Afterward we have to categorize only the licenses.