Comment puis-je m'assurer que les notices de copyright accompagnent tous mes fichiers source pour une version java-maven?

StackOverflow https://stackoverflow.com/questions/1821742

Question

Existe-t-il une méthode standard pour imposer l'inclusion des avis de droits d'auteur dans leurs versions java / maven? Je me rends compte que cela ne devrait pas être nécessaire puisque le produit lui-même est écrit en copie et que si quelqu'un a ma source, j'ai de plus gros problèmes, mais on me demande de vérifier et je me demandais si checkstyle, PMD ou autre chose traitait cela automatiquement .

Existe-t-il un outil permettant de vérifier le copyright?

Était-ce utile?

La solution

Oui , Checkstyle (et le maven-checkstyle -plugin ) peut le faire, il peut vérifier que tous les fichiers source contiennent un en-tête de licence. Placez cet en-tête dans un fichier texte et utilisez le headerLocation à pointer dessus (il utilise par défaut LICENSE.txt ).

Supposons que vous souhaitiez utiliser checkstyle.license pour vos avis de droits d'auteur. Pour une construction multi-modules, l'approche standard consiste à créer un module dédié pour héberger des ressources Checkstyle (voir Configuration des multimodules ):

whizbang
|-- pom.xml
|-- build-tools
|   |-- src
|   |   `-- main
|   |       `-- resources
|   |           `-- whizbang
|   |               |-- checkstyle.xml
|   |               `-- checkstyle.license
|   `-- pom.xml
|-- core
|-- gui
|-- jmx
`-- src

Ensuite, incluez la configuration de Checkstyle dans le niveau supérieur pom.xml .

<pluginManagement>
  <plugins>
    <!-- Apply checkstyle rules and fail the build in case of errors. The
         checkstyle config files are taken from the build-tools JAR module.-->
    <plugin>
      <groupId>org.apache.maven.plugins</groupId>
      <artifactId>maven-checkstyle-plugin</artifactId>
      <!-- Lock down plugin version for build reproducibility -->
      <version>2.4</version>
      <dependencies>
        <dependency>
          <groupId>com.example.whizbang</groupId>
          <artifactId>build-tools</artifactId>
          <version>1.0</version>
        </dependency>
      </dependencies>
      <configuration>
        <consoleOutput>true</consoleOutput>
        <configLocation>whizbang/checkstyle.xml</configLocation>
        <headerLocation>whizbang/checkstyle.license</headerLocation>
      </configuration>
      <executions>
        <execution>
          <goals>
            <goal>check</goal>
          </goals>
        </execution>
      </executions>
    </plugin>
    ...
  </plugins>
</pluginManagement>

Cette configuration garantira la présence d’un en-tête de droit d’auteur dans les fichiers source (et appliquera d’autres règles Checkstyle mais c’est une autre histoire). Adaptez-le à vos besoins.

Autres conseils

je viens de trouver http://code.google.com/p/maven-license-plugin/ < semble raisonnable aussi

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top