Revision 744 org.gvsig.scripting/trunk/org.gvsig.scripting/org.gvsig.scripting.app/org.gvsig.scripting.app.mainplugin/src/main/resources-plugin/scripting/scripts/tools/makedocs/makedocs.py
makedocs.py | ||
---|---|---|
7 | 7 |
import os.path |
8 | 8 |
import shutil |
9 | 9 |
import sys |
10 |
import subprocess
|
|
10 |
import subprocess |
|
11 | 11 |
import threading |
12 | 12 |
import logging |
13 | 13 |
|
... | ... | |
42 | 42 |
sources.append(javaSources) |
43 | 43 |
self.message2(root) |
44 | 44 |
return sources |
45 |
|
|
45 |
|
|
46 | 46 |
def findJavadocSources(self,workspace,projects): |
47 | 47 |
sources = list() |
48 | 48 |
for project, url in projects: |
... | ... | |
53 | 53 |
"src","main","resources-plugin","scripting","lib","gvsig","javadocs" |
54 | 54 |
)) |
55 | 55 |
return sources |
56 |
|
|
56 |
|
|
57 | 57 |
def calculateCountFromSources(self,sources): |
58 | 58 |
countfiles = 0 |
59 | 59 |
folders = set() |
... | ... | |
66 | 66 |
if len(files)>0: |
67 | 67 |
package = root[len(sourceFolder)+1:] |
68 | 68 |
folders.add(package) |
69 |
|
|
69 |
|
|
70 | 70 |
return countfiles, len(folders) |
71 | 71 |
|
72 | 72 |
def calculateHTMLFileList(self,htmlroot, listfname): |
... | ... | |
86 | 86 |
|
87 | 87 |
def message(self,msg): |
88 | 88 |
self.lblStatus.setText(msg) |
89 |
|
|
89 |
|
|
90 | 90 |
def message2(self,msg): |
91 | 91 |
self.lblStatus2.setText(msg) |
92 | 92 |
|
93 |
def checkoutSources(self,workspace,projects, outputpath): |
|
94 |
if not os.path.exists(workspace): |
|
95 |
os.makedirs(workspace) |
|
96 |
self.message("Descargando proyectos...") |
|
97 |
count = 0 |
|
98 |
self.pgbProgreso.setMaximum(len(projects)) |
|
99 |
self.pgbProgreso.setValue(count) |
|
100 |
self.pgbProgreso.setIndeterminate(False) |
|
101 |
for project, url in projects: |
|
102 |
if self.canceled: |
|
103 |
break |
|
104 |
self.message2("Descargando %s..." % project) |
|
105 |
count += 1 |
|
106 |
self.pgbProgreso.setValue(count) |
|
107 |
cmd = 'cd "%s" ; svn checkout "%s"' % (workspace,url) |
|
108 |
os.system(cmd) |
|
109 |
|
|
93 | 110 |
def mkjavadoc(self,workspace,projects, outputpath): |
94 | 111 |
try: |
95 | 112 |
self.pgbProgreso.setIndeterminate(True) |
96 | 113 |
self.message("Creando carpeta de salida...") |
97 | 114 |
if not os.path.exists(outputpath): |
98 | 115 |
os.makedirs(outputpath) |
99 |
|
|
116 |
|
|
100 | 117 |
os.chdir(outputpath) |
101 | 118 |
if not os.path.exists("html"): |
102 | 119 |
os.makedirs("html") |
103 | 120 |
os.chdir("html") |
104 |
|
|
105 |
if self.chkGenerarJavadocs.isSelected(): |
|
121 |
|
|
122 |
if not self.canceled and self.chkCheckoutSources.isSelected(): |
|
123 |
self.checkoutSources(workspace,projects, outputpath) |
|
124 |
|
|
125 |
if not self.canceled and self.chkGenerarJavadocs.isSelected(): |
|
106 | 126 |
self.message("Eliminando javadoc existentes...") |
127 |
self.pgbProgreso.setIndeterminate(True) |
|
107 | 128 |
os.chdir("..") |
108 | 129 |
shutil.rmtree("html",True) |
109 | 130 |
os.makedirs("html") |
110 | 131 |
os.chdir("html") |
111 |
|
|
132 |
|
|
112 | 133 |
self.message("Localizando fuentes...") |
113 | 134 |
sources = self.findJavadocSources(workspace,projects) |
114 |
|
|
135 |
|
|
115 | 136 |
self.message("Preparando procesado...") |
116 | 137 |
maxfiles, maxpackages = self.calculateCountFromSources(sources) |
117 |
|
|
138 |
|
|
118 | 139 |
argsfile = file("javadoc_args","w") |
119 |
argsfile.write("-nonavbar\n") |
|
140 |
#argsfile.write("-nonavbar\n") |
|
141 |
argsfile.write("-link http://docs.oracle.com/javase/8/docs/api/\n") |
|
120 | 142 |
argsfile.write("-encoding ISO-8859-1\n") |
121 | 143 |
argsfile.write("-subpackages org:scripting\n") |
122 | 144 |
argsfile.write("-sourcepath ") |
... | ... | |
124 | 146 |
argsfile.write(":%s" % source) |
125 | 147 |
argsfile.write("\n") |
126 | 148 |
argsfile.close() |
127 |
|
|
149 |
|
|
128 | 150 |
proc = subprocess.Popen(["javadoc", "@javadoc_args"], stdout=subprocess.PIPE,stderr=subprocess.STDOUT) |
129 |
stdoutprocess = proc.stdout
|
|
151 |
stdoutprocess = proc.stdout |
|
130 | 152 |
generatingcount = 0 |
131 | 153 |
loadingcount=0 |
132 | 154 |
|
133 | 155 |
self.pgbProgreso.setMaximum(maxpackages) |
134 | 156 |
self.pgbProgreso.setValue(0) |
135 | 157 |
self.pgbProgreso.setIndeterminate(False) |
136 |
|
|
158 |
|
|
137 | 159 |
for line in stdoutprocess: |
138 | 160 |
if self.canceled: |
139 | 161 |
break |
... | ... | |
141 | 163 |
if ": error:" in line : |
142 | 164 |
self.message("Procesando fuentes...") |
143 | 165 |
self.message2(line) |
144 |
|
|
166 |
|
|
145 | 167 |
elif line.startswith("Generating "): |
146 | 168 |
self.message("Generando javadocs...") |
147 | 169 |
if generatingcount == 0: |
... | ... | |
153 | 175 |
if os.path.basename(line[:-4]).count(".")==1: |
154 | 176 |
generatingcount +=1 |
155 | 177 |
self.pgbProgreso.setValue(generatingcount) |
156 |
|
|
178 |
|
|
157 | 179 |
elif line.startswith("Loading source files for package "): |
158 | 180 |
self.message("Cargando fuentes...") |
159 | 181 |
loadingcount+=1 |
... | ... | |
165 | 187 |
self.pgbProgreso.setValue(self.pgbProgreso.getMaximum()) |
166 | 188 |
if self.canceled: |
167 | 189 |
print "Proceso cancelado" |
168 |
|
|
190 |
|
|
169 | 191 |
except Exception, ex: |
170 | 192 |
self.message("Proceso abortado") |
171 | 193 |
self.message2(str(ex)) |
... | ... | |
177 | 199 |
if f == None or len(f)<1: |
178 | 200 |
return |
179 | 201 |
self.txtWorkspace.setText(f[0].getAbsolutePath()) |
180 |
|
|
202 |
|
|
181 | 203 |
def btnSelectOutputFolder_click(self, *args): |
182 | 204 |
f = openFolderDialog("Selecciona la carpeta de salida") |
183 | 205 |
if f == None or len(f)<1: |
184 | 206 |
return |
185 | 207 |
self.txtOutputFolder.setText(f[0].getAbsolutePath()) |
186 |
|
|
208 |
|
|
187 | 209 |
def btnCerrar_click(self,*args): |
188 | 210 |
self.canceled = True |
189 | 211 |
self.hide() |
... | ... | |
192 | 214 |
self.btnProcesar.setEnabled(False) |
193 | 215 |
self.btnCerrar.setText("Cancelar") |
194 | 216 |
self.start() |
195 |
|
|
217 |
|
|
196 | 218 |
def showWindow(self,title="Crear javadocs"): |
197 | 219 |
windowManager = ScriptingSwingLocator.getUIManager() |
198 | 220 |
windowManager.showWindow(self.asJComponent(),title) |
... | ... | |
200 | 222 |
def run(self): |
201 | 223 |
self.mkjavadoc( |
202 | 224 |
self.workspace, |
203 |
self.projects,
|
|
225 |
self.projects, |
|
204 | 226 |
self.outputfolder |
205 | 227 |
) |
206 | 228 |
# Falla al volverse a lanzar el proceso por que no se |
... | ... | |
210 | 232 |
|
211 | 233 |
|
212 | 234 |
def main(*args): |
213 |
workspace = "/home/jjdelcerro/data/devel/temp"
|
|
235 |
workspace = "/tmp/makedocs"
|
|
214 | 236 |
outputfolder = workspace + "/javadocs" |
215 | 237 |
projects = ( |
216 |
("org.gvsig.scripting",None), |
|
217 |
("org.gvsig.tools",None), |
|
218 |
("org.gvsig.desktop",None), |
|
219 |
("org.gvsig.gdal",None), |
|
220 |
("org.gvsig.raster",None), |
|
221 |
("org.gvsig.raster.gdal",None), |
|
222 |
("org.gvsig.geoprocess",None), |
|
223 |
("org.gvsig.3d",None), |
|
224 |
("org.gvsig.app.document.layout2.app",None), |
|
225 |
("org.gvsig.attributeeditor",None), |
|
226 |
("org.gvsig.chart",None), |
|
227 |
("org.gvsig.complexlegend",None), |
|
228 |
("org.gvsig.derivedgeometries",None), |
|
229 |
("org.gvsig.dgn",None), |
|
230 |
("org.gvsig.downloader",None), |
|
231 |
("org.gvsig.dwg",None), |
|
232 |
("org.gvsig.dxf",None), |
|
233 |
("org.gvsig.dyschromatopsia",None), |
|
234 |
("org.gvsig.educa.portableview",None), |
|
235 |
("org.gvsig.expressionfield",None), |
|
236 |
("org.gvsig.gpe",None), |
|
237 |
("org.gvsig.hyperlink.app",None), |
|
238 |
("org.gvsig.jexcel",None), |
|
239 |
("org.gvsig.jvmpreferences",None), |
|
240 |
("org.gvsig.legend.dotdensity.app",None), |
|
241 |
("org.gvsig.legend.graduatedsymbols.app",None), |
|
242 |
("org.gvsig.legend.proportionalsymbols.app",None), |
|
243 |
("org.gvsig.legend.quantitybycategory.app",None), |
|
244 |
("org.gvsig.legend.vectorfilterexpression.app",None), |
|
245 |
("org.gvsig.mapsheets.app",None), |
|
246 |
("org.gvsig.postgresql",None), |
|
247 |
("org.gvsig.projection.jcrs",None), |
|
248 |
("org.gvsig.raster.ermapper",None), |
|
249 |
("org.gvsig.raster.georeferencing",None), |
|
250 |
("org.gvsig.raster.lizardtech",None), |
|
251 |
("org.gvsig.raster.multifile",None), |
|
252 |
("org.gvsig.raster.netcdf",None), |
|
253 |
("org.gvsig.raster.osm",None), |
|
254 |
("org.gvsig.raster.postgis",None), |
|
255 |
("org.gvsig.raster.principalcomponents",None), |
|
256 |
("org.gvsig.raster.reproject",None), |
|
257 |
("org.gvsig.raster.roimask",None), |
|
258 |
("org.gvsig.raster.tasseledcap",None), |
|
259 |
("org.gvsig.raster.tilecache",None), |
|
260 |
("org.gvsig.raster.tools",None), |
|
261 |
("org.gvsig.raster.wms",None), |
|
262 |
("org.gvsig.raster.wcs",None), |
|
263 |
("org.gvsig.raster.wmts",None), |
|
264 |
("org.gvsig.seismic",None), |
|
265 |
("org.gvsig.sld",None), |
|
266 |
("org.gvsig.vectorediting",None), |
|
267 |
("org.gvsig.vectorediting.symmetry",None), |
|
268 |
("org.gvsig.vectorediting.offset",None), |
|
269 |
("org.gvsig.wfs.app",None), |
|
270 |
("org.gvsig.customize.app",None), |
|
271 |
("org.gvsig.catalog",None), |
|
272 |
("org.gvsig.gazetteer",None), |
|
273 |
("org.gvsig.publish",None), |
|
274 |
("org.gvsig.webmap",None), |
|
275 |
("org.gvsig.googlemaps",None), |
|
276 |
("org.gvsig.bingmaps",None), |
|
277 |
("org.gvsig.toolbox", None), |
|
238 |
("org.gvsig.scripting","http://devel.gvsig.org/svn/gvsig-scripting/org.gvsig.scripting/trunk/org.gvsig.scripting"), |
|
239 |
("org.gvsig.tools","http://devel.gvsig.org/svn/gvsig-tools/org.gvsig.tools/library/trunk/org.gvsig.tools"), |
|
240 |
("org.gvsig.desktop","http://devel.gvsig.org/svn/gvsig-desktop/trunk/org.gvsig.desktop"), |
|
241 |
("org.gvsig.gdal","http://devel.gvsig.org/svn/gvsig-gdal/trunk/org.gvsig.gdal"), |
|
242 |
("org.gvsig.raster","http://devel.gvsig.org/svn/gvsig-raster/org.gvsig.raster/trunk/org.gvsig.raster"), |
|
243 |
("org.gvsig.raster.gdal","http://devel.gvsig.org/svn/gvsig-raster/org.gvsig.raster.gdal/trunk/org.gvsig.raster.gdal"), |
|
244 |
("org.gvsig.geoprocess","http://devel.gvsig.org/svn/gvsig-geoprocess/org.gvsig.geoprocess/trunk/org.gvsig.geoprocess"), |
|
245 |
("org.gvsig.3d","http://devel.gvsig.org/svn/gvsig-3d/2.1/trunk/org.gvsig.view3d/"), |
|
246 |
("org.gvsig.app.document.layout2.app","https://devel.gvsig.org/svn/gvsig-app-document-layout/trunk/org.gvsig.app.document.layout2.app"), |
|
247 |
("org.gvsig.attributeeditor","http://devel.gvsig.org/svn/gvsig-attributeeditor/org.gvsig.attributeeditor/trunk/org.gvsig.attributeeditor"), |
|
248 |
("org.gvsig.chart","http://devel.gvsig.org/svn/gvsig-basic-chart/org.gvsig.chart/trunk/org.gvsig.chart"), |
|
249 |
("org.gvsig.complexlegend","http://devel.gvsig.org/svn/gvsig-base-legends/org.gvsig.complexlegend/trunk/org.gvsig.complexlegend"), |
|
250 |
("org.gvsig.derivedgeometries","http://devel.gvsig.org/svn/gvsig-derived-geometries/org.gvsig.derivedgeometries/trunk/org.gvsig.derivedgeometries/"), |
|
251 |
("org.gvsig.dgn","http://devel.gvsig.org/svn/gvsig-dgn/org.gvsig.dgn/trunk/org.gvsig.dgn"), |
|
252 |
("org.gvsig.downloader","http://devel.gvsig.org/svn/gvsig-downloader/org.gvsig.downloader/trunk/org.gvsig.downloader/"), |
|
253 |
("org.gvsig.dwg","http://devel.gvsig.org/svn/gvsig-dwg/trunk/org.gvsig.dwg/"), |
|
254 |
("org.gvsig.dxf","http://devel.gvsig.org/svn/gvsig-dxf/org.gvsig.dxf/trunk/org.gvsig.dxf/"), |
|
255 |
("org.gvsig.dyschromatopsia","http://devel.gvsig.org/svn/gvsig-dyschromatopsia/trunk/org.gvsig.dyschromatopsia/"), |
|
256 |
("org.gvsig.educa.portableview","http://devel.gvsig.org/svn/gvsig-educa/org.gvsig.educa.portableview/trunk/org.gvsig.educa.portableview/"), |
|
257 |
("org.gvsig.expressionfield","http://devel.gvsig.org/svn/gvsig-expression-field/org.gvsig.expressionfield/trunk/org.gvsig.expressionfield/"), |
|
258 |
("org.gvsig.gpe","http://devel.gvsig.org/svn/gvsig-gpe/org.gvsig.gpe/library/trunk/org.gvsig.gpe/"), |
|
259 |
("org.gvsig.hyperlink.app","http://devel.gvsig.org/svn/gvsig-hyperlink/org.gvsig.hyperlink.app/trunk/org.gvsig.hyperlink.app"), |
|
260 |
("org.gvsig.jexcel","http://devel.gvsig.org/svn/gvsig-jexcel/org.gvsig.jexcel/trunk/org.gvsig.jexcel"), |
|
261 |
("org.gvsig.jvmpreferences","http://devel.gvsig.org/svn/gvsig-projects-pool/org.gvsig.jvmpreferences/trunk/org.gvsig.jvmpreferences.native/"), |
|
262 |
("org.gvsig.legend.dotdensity.app","http://devel.gvsig.org/svn/gvsig-base-legends/org.gvsig.legend.dotdensity.app.mainplugin/trunk/org.gvsig.legend.dotdensity.app.mainplugin/"), |
|
263 |
("org.gvsig.legend.graduatedsymbols.app","http://devel.gvsig.org/svn/gvsig-base-legends/org.gvsig.legend.graduatedsymbols.app.mainplugin/trunk/org.gvsig.legend.graduatedsymbols.app.mainplugin/"), |
|
264 |
("org.gvsig.legend.proportionalsymbols.app","http://devel.gvsig.org/svn/gvsig-base-legends/org.gvsig.legend.proportionalsymbols.app.mainplugin/trunk/org.gvsig.legend.proportionalsymbols.app.mainplugin/"), |
|
265 |
("org.gvsig.legend.quantitybycategory.app","http://devel.gvsig.org/svn/gvsig-base-legends/org.gvsig.legend.quantitybycategory.app.mainplugin/trunk/org.gvsig.legend.quantitybycategory.app.mainplugin/"), |
|
266 |
("org.gvsig.legend.vectorfilterexpression.app","http://devel.gvsig.org/svn/gvsig-base-legends/org.gvsig.legend.vectorfilterexpression.app.mainplugin/trunk/org.gvsig.legend.vectorfilterexpression.app.mainplugin/"), |
|
267 |
("org.gvsig.mapsheets.app","http://devel.gvsig.org/svn/mapsheets/trunk/org.gvsig.mapsheets.app"), |
|
268 |
("org.gvsig.postgresql","http://devel.gvsig.org/svn/gvsig-postgresql/trunk/org.gvsig.postgresql"), |
|
269 |
("org.gvsig.projection.jcrs","http://devel.gvsig.org/svn/gvsig-jcrs/org.gvsig.projection.jcrs/trunk/org.gvsig.projection.jcrs"), |
|
270 |
("org.gvsig.raster.ermapper","http://devel.gvsig.org/svn/gvsig-raster/org.gvsig.raster.ermapper/trunk/org.gvsig.raster.ermapper/"), |
|
271 |
("org.gvsig.raster.georeferencing","http://devel.gvsig.org/svn/gvsig-georeferencing/org.gvsig.raster.georeferencing/trunk/org.gvsig.raster.georeferencing/"), |
|
272 |
("org.gvsig.raster.lizardtech","http://devel.gvsig.org/svn/gvsig-raster/org.gvsig.raster.lizardtech/trunk/org.gvsig.raster.lizardtech/"), |
|
273 |
("org.gvsig.raster.multifile","http://devel.gvsig.org/svn/gvsig-raster/org.gvsig.raster.multifile/trunk/org.gvsig.raster.multifile/"), |
|
274 |
("org.gvsig.raster.netcdf","http://devel.gvsig.org/svn/gvsig-raster/org.gvsig.raster.netcdf/trunk/org.gvsig.raster.netcdf/"), |
|
275 |
("org.gvsig.raster.osm","http://devel.gvsig.org/svn/gvsig-osm/org.gvsig.raster.osm/trunk/org.gvsig.raster.osm"), |
|
276 |
("org.gvsig.raster.postgis","http://devel.gvsig.org/svn/gvsig-raster/org.gvsig.raster.postgis/trunk/org.gvsig.raster.postgis/"), |
|
277 |
("org.gvsig.raster.principalcomponents","http://devel.gvsig.org/svn/gvsig-raster/org.gvsig.raster.principalcomponents/trunk/org.gvsig.raster.principalcomponents/"), |
|
278 |
("org.gvsig.raster.reproject","http://devel.gvsig.org/svn/gvsig-raster/org.gvsig.raster.reproject/trunk/org.gvsig.raster.reproject/"), |
|
279 |
("org.gvsig.raster.roimask","http://devel.gvsig.org/svn/gvsig-raster/org.gvsig.raster.roimask/trunk/org.gvsig.raster.roimask/"), |
|
280 |
("org.gvsig.raster.tasseledcap","http://devel.gvsig.org/svn/gvsig-raster/org.gvsig.raster.tasseledcap/trunk/org.gvsig.raster.tasseledcap/"), |
|
281 |
("org.gvsig.raster.tilecache","http://devel.gvsig.org/svn/gvsig-raster/org.gvsig.raster.tilecache/trunk/org.gvsig.raster.tilecache/"), |
|
282 |
("org.gvsig.raster.tools","http://devel.gvsig.org/svn/gvsig-raster/org.gvsig.raster.tools/trunk/org.gvsig.raster.tools/"), |
|
283 |
("org.gvsig.raster.wms","http://devel.gvsig.org/svn/gvsig-raster/org.gvsig.raster.wms/trunk/org.gvsig.raster.wms/"), |
|
284 |
("org.gvsig.raster.wcs","http://devel.gvsig.org/svn/gvsig-raster/org.gvsig.raster.wcs/trunk/org.gvsig.raster.wcs/"), |
|
285 |
("org.gvsig.raster.wmts","http://devel.gvsig.org/svn/gvsig-raster/org.gvsig.raster.wmts/trunk/org.gvsig.raster.wmts"), |
|
286 |
("org.gvsig.seismic","http://devel.gvsig.org/svn/gvsig-seismic/org.gvsig.seismic/trunk/org.gvsig.seismic"), |
|
287 |
("org.gvsig.sld","http://devel.gvsig.org/svn/gvsig-sldtools/org.gvsig.sld/trunk/org.gvsig.sld"), |
|
288 |
("org.gvsig.vectorediting","http://devel.gvsig.org/svn/gvsig-vectorediting/org.gvsig.vectorediting/trunk/org.gvsig.vectorediting/"), |
|
289 |
("org.gvsig.vectorediting.symmetry","http://devel.gvsig.org/svn/gvsig-vectorediting/org.gvsig.vectorediting.symmetry/trunk/org.gvsig.vectorediting.symmetry/"), |
|
290 |
("org.gvsig.vectorediting.offset","http://devel.gvsig.org/svn/gvsig-vectorediting/org.gvsig.vectorediting.offset/trunk/org.gvsig.vectorediting.offset/"), |
|
291 |
("org.gvsig.wfs.app","http://devel.gvsig.org/svn/gvsig-wfs/org.gvsig.wfs.app/trunk/org.gvsig.wfs.app/"), |
|
292 |
("org.gvsig.customize.app","http://devel.gvsig.org/svn/gvsig-desktop-customize/trunk/org.gvsig.customize.app/"), |
|
293 |
("org.gvsig.catalog","http://devel.gvsig.org/svn/gvsig-catalog/org.gvsig.catalog/trunk/org.gvsig.catalog/"), |
|
294 |
("org.gvsig.gazetteer","http://devel.gvsig.org/svn/gvsig-gazetteer/org.gvsig.gazetteer/trunk/org.gvsig.gazetteer/"), |
|
295 |
("org.gvsig.publish","http://devel.gvsig.org/svn/gvsig-publish/org.gvsig.publish/trunk/org.gvsig.publish"), |
|
296 |
("org.gvsig.webmap","http://devel.gvsig.org/svn/gvsig-webmap/org.gvsig.webmap/trunk/org.gvsig.webmap"), |
|
297 |
("org.gvsig.googlemaps","http://devel.gvsig.org/svn/gvsig-webmap/org.gvsig.googlemaps/trunk/org.gvsig.googlemaps"), |
|
298 |
("org.gvsig.bingmaps","http://devel.gvsig.org/svn/gvsig-webmap/org.gvsig.bingmaps/trunk/org.gvsig.bingmaps"), |
|
299 |
("org.gvsig.toolbox", "http://devel.gvsig.org/svn/gvsig-toolbox/org.gvsig.toolbox/trunk/org.gvsig.toolbox/"), |
|
300 |
("org.gvsig.projection.api", "https://devel.gvsig.org/svn/gvsig-jcrs/org.gvsig.projection/trunk/org.gvsig.projection.api/"), |
|
301 |
("org.gvsig.raster.cache", "http://devel.gvsig.org/svn/gvsig-raster/org.gvsig.raster.cache/trunk/org.gvsig.raster.cache/"), |
|
278 | 302 |
) |
303 |
|
|
279 | 304 |
makedocs = MakeDocs(workspace,projects,outputfolder) |
280 | 305 |
makedocs.showWindow("Crear javadocs") |
281 | 306 |
#makedocs.run() |
282 |
|
|
307 |
|
Also available in: Unified diff