Applying Python To Modify Java Code
Python script intended to open each Java's project file, add the license term on the start of the file as a Java comment and writing it to the disk.
1) You'll need a Python interpreter. Check this out in http://python.org.
2) You'll need to enter the root file directory of the Java project, like python AddLicense.py ${path} where ${path} defines user project root directory.
3) See http://fcmanager.wiki.sourceforge.net
1:# Python script to add the LGPL notices to each java file of the FileContentManager project.
2:import os, glob, sys
3:License = """\
4:/**
5:*FileContentManager is a Java based file manager desktop application,
6:*it can show, edit and manipulate the content of the files archived inside a zip.
7:*
8:*Copyright (C) 2008
9:*
10:*Created by Camila Sanchez [http://mimix.wordpress.com/], Rafael Naufal [http://rnaufal.livejournal.com]
11:and Rodrigo [[email protected]]
12:*
13:*FileContentManager is free software; you can redistribute it and/or
14:*modify it under the terms of the GNU Lesser General Public
15:*License as published by the Free Software Foundation; either
16:*version 2.1 of the License, or (at your option) any later version.
17:*
18:*This library is distributed in the hope that it will be useful,
19:*but WITHOUT ANY WARRANTY; without even the implied warranty of
20:*MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
21:*Lesser General Public License for more details.
22:*
23:*You should have received a copy of the GNU Lesser General Public
24:*License along with FileContentManager; if not, write to the Free Software
25:*Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA """
26:
27:size = len(sys.argv)
28:if size == 1 or size > 2:
29: print "Usage: AddLicense.py $1"
30: sys.exit(1)
31:inputPath = sys.argv[1]
32:if not os.path.exists(inputPath):
33: print inputPath, "does not exist on disk"
34: sys.exit(1)
35:if not os.path.isdir(inputPath):
36: print inputPath, "isn't a dir"
37: sys.exit(1)
38:for path, dirs, files in os.walk(inputPath):
39: fileWithLicense = ''
40: for filepath in [ os.path.join(path, f)
41: for f in files if f.endswith(".java")]:
42: content = file(filepath).read()
43: f = file(filepath, "w")
44: print >>f, License + "\n" + content
45: f.close()
46:
47:
Python (language)
Java (programming language)
Opinions expressed by DZone contributors are their own.