Estoy desarrollando un plugin de Maven que al aplicarse a otro proyecto cree carpetas con los nombres de los subproeyctos (y luego mueva los ficheros a las carpetas correspondientes).
El caso es que estoy realizando la implementacion recorriendo los Nodelist leyendo el XML y queria saber si hay alguna manera mas eficiente o mas sencilla ya que estoy un poco atascado y estoy empezando a plantearme otras posibles implementaciones. Un saludo
Añado el ccodigo que estoy implementando por si alguien ve mi fallo
Código:
public String leerPom(String tag1, String tag2) { Document doc = crearDocument(); doc.getDocumentElement().normalize(); NodeList listaProjects = numeroNodos(tag1); for (int i = 0; i < listaProjects.getLength(); i++) { Node artifact = listaProjects.item(i); if (artifact.getNodeType() == Node.ELEMENT_NODE) { Element elemento = (Element) artifact; return (getTagValue(tag2, elemento).toString()); } else { return "FALLO"; } } return "FIN"; }
Código:
La llamada a la funcion la hago con private static String getTagValue(String sTag, Element eElement) { NodeList nlList = eElement.getElementsByTagName(sTag).item(0) .getChildNodes(); Node nValue = (Node) nlList.item(0); return nValue.getNodeValue(); }
Código:
mi problema es que Subproyectos tiene valor 3 pero cuando recorre el pom solo crea la carpeta con el valor de la primera etiqueta module es decir teniendo este codigoint subProyectos = numeroNodos("module").getLength(); if (subProyectos > 0) { for (int j = 0; j < subProyectos; j++) { File myFolder6 = new File(DIRECTORIO + "\\" + constantes[i] + "\\" + aux + "\\" + leerPom(MODULE, MODULES)); crearDirectorio(myFolder6); }
Código:
Solo se me crea la carpeta Uno. alguien ve algo mal? <modules> <module>Uno</module> <module>Dos</module> <module>Tres</module> </modules>