Project

General

Profile

Archivos fuente y compilados

Proyecto SuiteSET3
Descripción Plantilla para proyectos basada en ReadySET y Métrica 3.
Desarrollo SuiteSET3 (desarrollo) versión 2.0.x
Plazos vigentes FECHA INICIO - FECHA FINALIZACIÓN
Fecha edición 25/06/2022

Relacionados

Ejemplo de build.xml para Tomcat
Manual de Ant para Apache

ENLACES A ESTÁNDARES RELEVANTES
ENLACES A OTROS DOCUMENTOS

Resumen

TAREAS: Conteste las preguntas que se encuentran abajo para ayudar a definir la organización de su código fuente y procesos de compilación. Se ha incluido texto de ejemplo. Añada o elimine texto según sea necesario. Por ejemplo, no todos los proyectos desean ser independientes de la plataforma.

¿Cuáles son los hechos más importantes que un desarrollador debería saber acerca de esta organización de código fuente y el sistema de compilación?

Esta organización sigue de forma muy libre el estándar propuesto en la documentación de Tomcat y es muy similar a la organización usada en muchos proyectos open-source en la Apache Software Foundation.

¿Cuáles son los objetivos categorizados de esta organización de código fuente y el sistema de compilación?

  1. Separación de archivos por tipo
  2. La separación de los archivos controlados por versión de los archivs generados en el proceso de compilación
  3. Compatibilidad con procesos de compilación estándar
  4. Independencia de Plataforma

Directorios y archivos clave en copias de trabajo para desarrollo

TAREAS: Describa el propósito de cada directorio que aparece en una copia de trabajo de desarrollo, incluya también cualquier archivos que son importantes para la estructura general o el proceso de compilación.

Path VC Descripción

build.xml

Archivo compilado

build.properties

Archivo de propiedades de compilación

src/

Código fuente

src/java/

Código fuente Java

src/java/[paquetes anidados]/

Código fuente Java de clases en cada paquete

src/java/[paquetes anidados]/test/

Código fuente de Java para pruebas unitarias de las clases en cada paquete

web/

Archivos HTML y JSP

web/css/

Archivos CSS, si existen

web/images/

Archivos de imágenes, si existen

web/WEB-INF/web.xml

Archivo de configuración de la aplicación web en Java

conf/

Archivos de configuración, si existen

data/

Datos iniciales a cargar en la base de datos y/o el sistema de archivos, si existen

lib/

Librerías reusadas por este proyecto, si existen

scripts/

Utilerías de línea de comando usadas en este proyecto, si existen

www/

Documentos del proyecto (por ejemplo, resumenes, plan, requerimientos y diseño)

build/

No

Salida al proceso de compilación

build/WEB-INF/classes/

No

Salida al código compilado por el proceso de compilación

dist/docs/api/

No

Documentación de la API producida por el proceso de compilación

dist/NOMBREDELPROYECTO-VERSION.war

No

Archivo web de clases distribuible y archivos de configuración generados por el proceso de compilación

Compilaciones de trabajo

TAREAS: Describa las compilaciones de trabajo que los desarrolladores utilizarán diariamente en su trabajo. Los ejemplos abajo deberán servir para la mayoría de los proyectos.

Destino Descripción

compile = default

Compila el código fuente en Java y crea archivos .class en el directorio "build".

dist

Empaca el sistema para distribución/entrega a servidores o a usuarios finales. Específicamente, crea archivos. war de clases compiladas y archivos de configuración.

install

Coloca el código ejecutable en un lugar donde puede ser ejecutado. Especificamente, copia los archivos .war en el directorio webapps de Tomcat para utilizarlo. Deberá reiniciar Tomcat para usarlo o usar la liga de "refrescar" en el Administrador de Tomcat.

javadoc

Genera documentación API de Java en "build/docs/api/".

clean

Borra los archivos generados por comandos previos de compilación. Los archivos bajo control de versión no son tocados.

Opciones de Configuración para Compilación

Propiedad

Descripción

app.nombre

El nombre de esta aplicación. Se recomienda usar una palabra corta, usada en el nombre los archivos de los paquetes a generar. Específicamente el archivo .war, y será usado para accesar la aplicación en http://localhost:8080/APP.NOMBRE/

app.version

Número de versión de esta entrega. Usada en el nombre de los archivos de paquetes generados, específicamente el archivo .war.

webapps.path

Path a los directorios "webapps" de Tomcat. Por defecto apunta a C:\Program Files\Apache Group\Tomcat 4.1\webapps\

Estas propiedades del sistema de compilación pueden ser modificadas editando el archivo build.properies.

Lista de Pendientes de la Organización de Código Fuente y Sistemas de Compilación

Separación de archivos por tipo: ¿Los archivos están separados por tipo?

Sí. Excepto los archivos de aplicación JSP y HTML que están en el mismo directorio, lo cual es conveniente porque algunas veces cambiamos un archivo HTML en uno JSP.

Separación de archivos controlados por versión y los que no llevan control: ¿A qué punto se ha realizado esto?

Ha sido terminada. Todo está bajo control de versión excepto el directorio "build". Ningún paso en el proceso de compilación debería crear o modificar ningún archivo en cualquier otro directorio.

Compatibilidad con procesos de compilación estándar: ¿Hasta qué punto se ha realizado esto?

Bien hasta el momento. Podemos usar los archivos build.xml que son muy cercanos a los ejemplos que vienen con Ant. Una diferencia es que mantenemos nuestra documentación técnica bajo "www" en lugar de usar "docs". También hemos evitado el uso de tareas personalizadas en Ant.

Independencia de Plataforma: ¿Hasta qué punto se ha realizado esto?

Estamos usanddo Ant, el cual es en si mismo independiente de la plataforma. Los nombres de los archivos y directorios deberían servir en cualquier plataforma debido a que no se utiliza diferenciación de mayúsculas. Asumimos que la utilidad de los scripts en el directorio "scripts" soportan todas las plataformas necesarias y no hemos creado directorios para versiones diferentes de estos archivos para plataformas específicas.