2010-12-14 5 views
6

Je souhaite ajouter les informations de copyright de notre société à tous nos fichiers de code source EXISTING. Le projet est développé en Eclipse. donc, pour les nouveaux fichiers, je peux modifier les paramètres comme suggéré here. Mais pour les fichiers existants, comment suis-je censé faire cela. Comment puis-je modifier des centaines de fichiers Java pour ajouter les informations de copyright. (Et je suis incapable d'ouvrir le plugin releng mentionné dans le lien ci-dessus.Ajouter des informations d'en-tête (copyright) aux fichiers source existants

Toutes les fenêtres en mode texte maniputaion langage de script va également aider.

+2

Est-ce que l'un des fichiers existants possède déjà le nouvel en-tête de fichier OU en a-t-il un ancien qui doit être remplacé? –

+0

@Craig: les fichiers existants n'ont aucun en-tête. Nous devons ajouter frais. – HanuAthena

Répondre

8

Correction solution de Konstantin:

find . -name \*.java -exec sh -c "mv '{}' tmp && cp copyright '{}' && cat tmp >> '{}' && rm tmp" \; 

problème était que & & est interprété par le shell directement au lieu d'être passé à trouver. Echapper à eux n'est pas une solution non plus, car le gestionnaire de recherche ne les comprend pas. Alors donnez simplement la commande entière à un shell.

+0

Super petit script! Cela a bien fonctionné pour moi! :) – Jona

2

J'installer Cygwin (core + trouver) et faire quelque chose d'un genre

find . -name *.java -exec mv '{}' tmp && cp copyright '{}' && cat tmp >> '{}' && rm tmp \;

+0

salut j'ai essayé ceci - comme c'est.mais je reçois une erreur "trouver: argument manquant à -exec" – HanuAthena

2

Je pense que vous pouvez utiliser la commande remplacer Eclipse en utilisant une expression régulière

Imaginez que vos droits d'auteur est quelque chose comme:.

/* jQuery UI CSS Framework 
* Copyright (c) 2010 AUTHORS.txt (http://jqueryui.com/about) 
* Dual licensed under the MIT (MIT-LICENSE.txt) and GPL (GPL-LICENSE.txt) licenses. 
*/ 

puis

1. Go to menu: Search -> File 

2. in the Search dialog 
2.1. check the "Regular Expression" 
2.2. in the Containing text: 
    \A[^(\Q/*\E\s+jQuery.*)] 
2.3 click the Replace 
    past your copyright 

Explication des expressions rationnelles:

\ A - Début du fichier

\ Q ... \ E - va ici les mots-clés regex (parce que/et * sont des clés en regex)

\ s + - espaces blancs

[^ (..)] - à l'exception des moyens

2

Vous pouvez utiliser le plugin de licence maven pour cela.

Vérifiez this et this. Le plugin prend en charge les modèles pour votre en-tête de licence, supprime la licence et vérifie la licence dans tous vos fichiers.

5

S'il vous plaît essayer eclipse Releng plugin.
Cela aiderait à corriger/ajouter une déclaration de copyright dans tous les fichiers .java et .properties.
Faites un clic droit sur le projet et sélectionnez "Fix copyright".
Link.

Questions connexes