How to manage license banners in source files of Eclipse projects

后端 未结 2 515
说谎
说谎 2020-12-16 13:14

I\'m about to release a set of Eclipse plug-ins as Open Source and noticed that most source code released under the LGPL/EPL contains a header banner in each file that refer

2条回答
  •  半阙折子戏
    2020-12-16 13:48

    Concerning best practises, I believe you should have your license text in a separate file and have a build tool (ie ant) to add it at the beginning of all other files. Since you are talking about an open source project you would need a build process anyway for thinks like generating the javadocs, publishing releases etc.

    BTW,ant tasks are simple Java classes so it should be easy to write one yourself if you don't find an ant plugin that does exactly that.

    Coming to eclipse, to my knowledge, it cannot do something like this. The quickest way I can think of to do it is with bash (if you are using Linux). Assume the file msg contains the text you want to add at the beginning of every file.

    1. Create a new directory to store the files:

      mkdir ~/outdir

    2. Add the msg at the beginning of every file and put the result at the outdir

      for i in ls "*.java"; do cat msg $i > ~/outdir/$i ; done

    Similarly you can write a command that does the same recursively, with an extra step to create the directory strucutre:

    mkdir ~/outdir
    for i in `find -type d | sed 's/\.//' | grep -v "^$"`; do mkdir ~/outdir$i; done
    for i in `find -name "*.java"`; do cat msg $i > ~/outdir/$i ; done
    

提交回复
热议问题