Добавить заголовок (информацию об авторских правах) в существующие исходные файлы - PullRequest
6 голосов
/ 14 декабря 2010

Я хочу добавить информацию об авторских правах нашей компании во все наши файлы исходного кода EXISTING.

Проект разработан в Eclipse. поэтому для новых файлов я могу изменить настройки, как предложено здесь . Но для существующих файлов, как я должен это сделать. Как я могу изменить сотни файлов Java, чтобы добавить информацию об авторских правах. (И я не могу открыть подключаемый модуль, упомянутый в приведенной выше ссылке.

Любой язык сценариев управления текстами на основе Windows также поможет.

Ответы [ 6 ]

16 голосов
/ 12 января 2011

Поговорите со своим боссом.

См. Избавьтесь от шаблонов исходного кода .

8 голосов
/ 10 января 2011

Исправление решения Константина:

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

Проблема заключалась в том, что && интерпретируется оболочкой напрямую, а не передается для поиска. Экранировать их тоже нельзя, так как find exec их не понимает. Так что просто дайте всю команду какой-то оболочке.

5 голосов
/ 08 октября 2012

Пожалуйста, попробуйте плагин eclipse Releng.
Это поможет исправить / добавить заявление об авторских правах во все файлы .java и .properties.
Просто щелкните правой кнопкой мыши проект и выберите «Исправить авторские права».
Link .

2 голосов
/ 13 января 2011

Вы можете использовать лицензионный плагин maven для этого.

Проверьте this и this .Шаблоны поддержки плагинов для заголовка вашей лицензии, удалите лицензию и проверьте наличие лицензии во всех ваших файлах.

2 голосов
/ 14 декабря 2010

Я думаю, вы можете использовать команду Eclipse replace, используя регулярные выражения.

Представьте, что ваше авторское право выглядит примерно так:

/* 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.
*/

тогда

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

Объяснение регулярного выражения:

\ A - начало файла

\ Q ... \ E - здесь идут ключевые слова регулярного выражения (потому что / и * являются ключами в регулярном выражении)

\ s + - пробелы

[^ (..)] - означает, кроме

2 голосов
/ 14 декабря 2010

Я бы установил CygWin (core + find) и сделал бы что-то вроде

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

...