proyecto pom limpiar introduccion estructura desde crear consola configurar arquitectura java svn java-ee version-control code-organization

java - pom - ¿Estructura de directorio de control de fuente recomendada?



introduccion a maven (4)

Encontré algunas preguntas viejas aquí en SO que podrían ser interesantes para ti:

Voy a utilizar Subversion para el control de fuente en una nueva aplicación web J2EE. ¿Qué estructura de directorios recomendarás para organizar el código, las pruebas y la documentación?


Para ampliar lo que sugirió Mendelt Siebenga, también agregaría un directorio web (para archivos JSP, WEB-INF, web.xml, etc.).

Las pruebas deben ir en una carpeta llamada test que sea un hermano de la carpeta principal src ; de esta forma, las clases de prueba de la unidad pueden tener el mismo nombre que el código fuente que se está probando (para facilitar las situaciones en las que desee probar clases o métodos protegidos) , por ejemplo ... vea las preguntas frecuentes sobre JUnit para esto , y esta pregunta también sobre ¿Dónde debo poner mis archivos de prueba? ).

No he tenido mucho uso para mí, pero un proyecto Maven también creará una carpeta de resources junto con la carpeta src para código no fuente que desea empaquetar / implementar junto con el código fuente principal, cosas como archivos de propiedades, paquetes de recursos, etc. Su millaje puede variar en este.


Yo uso Eclipse para crear aplicaciones web J2EE y esto creará la siguiente estructura de proyecto:

WebAppName/ /lib /src /tests etc...

Luego crearía una carpeta SVN en nuestro trunk llamada WebAppNameProject. Dentro de esta carpeta, crearía carpetas llamadas WebAppNameSource, Documentation, etc. Dentro de la carpeta WebAppNameSource colocaría el origen del proyecto generado por Eclipse. Por lo tanto, tendría la siguiente estructura de carpetas en SVN:

/svn/trunk/WebAppNameProject /WebAppNameSource /lib /src /tests etc... /Documentation

Espero que esto ayude.


usualmente tengo

Project Directory src - actual source doc - documentation lib - libraries referenced from source dep - installation files for dependencies that don''t fit in lib db - database installation script

En el trabajo con Visual Studio, no estoy seguro de si esto funciona igual en el mundo de Java. Pero normalmente pongo cosas en diferentes carpetas de proyectos en src. Para cada proyecto fuente hay un proyecto de prueba por separado. Los archivos de compilación van en el directorio principal del proyecto. Normalmente pongo un LÉAME allí también, documentando cómo configurar el proyecto si necesita algo más que solo echarle un vistazo.

EDITAR: Esta es la estructura para una sola comprobación de trabajo del proyecto. Se duplicará para cada rama / etiqueta en su sistema de control de revisiones (recuerde, en la mayoría de los sistemas SVN, las copias son baratas). El ejemplo anterior bajo Subversion se vería así:

/project /trunk /src /doc /... /branches /feature1 /src /doc /... /feature2 /src /doc /...