<commit_before>El objetivo de este tutorial es crear una aplicación base utilizando las siguientes tecnologías:

-   Java
-   Eclipse
-   Svn
-   Maven

Se asume la presencia de un entorno con todas esas herramientas configuradas adecuadamente.

Creación del proyecto
---------------------

### Paso 1: Creación en base a un arquetype de maven

Desde una terminal y parados sobre el workspace de eclipse ejecutar el siguiente comando maven (previo asignar valores adecuados para groupId y artifactId)

`mvn archetype:create                      \`
`    -DartifactId=basic-maven-example      \`
`    -DgroupId=com.uqbar-project.edu       \`
`    -DarchetypeArtifactId=???`

Lo importante acá es saber qué archetype quiero usar, por ejemplo: maven-archetype-webapp

### Paso 2: Agregar bibliotecas necesarias al pom

Luego de ejecutar eso tendremos el código generado en el directorio con el nombre indicado en el (en mi caso ). En ese directorio encontrarán el , si vamos a utilizar otras bibliotecas podemos agregarlas ya mismo, por ejemplo:

`       `<dependency>
`           `<groupId>`log4j`</groupId>
`           `<artifactId>`log4j`</artifactId>
`           `<version>`1.2.13`</version>
`       `</dependency>
`       `<dependency>
`           `<groupId>`commons-collections`</groupId>
`           `<artifactId>`commons-collections`</artifactId>
`           `<version>`3.1`</version>
`       `</dependency>

### Paso 3: Generación de la información para eclipse

Luego, parados en la carpeta en donde está el debemos ejecutar:

`mvn eclipse:eclipse -DdownloadSources=true -DdownloadJavadocs=true`

Esto nos creará los archivos de configuración del eclipse: y . También se ocupará de bajar de Internet todas las bibliotecas que le indicamos (por eso hay que tener conexión a Internet para ejecutar estas cosas).

**Ojo:** En este punto es importante leer los warnings que tira el maven si no puede bajar las bibliotecas, para eso hay que leer todo lo que dice, no alcanza con quedarse con el final.

### Paso 4: Importación de la información al eclipse y al tomcat

Luego, desde el eclipse se deberá importar el proyecto, utilizando la opción "Import" -&gt; "Existing projects into workspace".

Publicarlo en svn
-----------------

Al publicarlo es importante agregar al <svn:ignore> los siguientes archivos y directorios:

-   Directorio target y subdirectorios.
-   Archivos {{code|.project}, {{code|.classpath}.

Luego quien se lo baje deberá ejecutar únicamente los pasos 3 y 4.

Agregar más referencias posteriormente
--------------------------------------

Para agregar dependencias posteriormente se debe realizar de la siguiente manera:

-   Modificar el siguiendo las instrucciones en el paso 2.<commit_msg>/* Publicarlo en svn */<commit_after>El objetivo de este tutorial es crear una aplicación base utilizando las siguientes tecnologías:

-   Java
-   Eclipse
-   Svn
-   Maven

Se asume la presencia de un entorno con todas esas herramientas configuradas adecuadamente.

Creación del proyecto
---------------------

### Paso 1: Creación en base a un arquetype de maven

Desde una terminal y parados sobre el workspace de eclipse ejecutar el siguiente comando maven (previo asignar valores adecuados para groupId y artifactId)

`mvn archetype:create                      \`
`    -DartifactId=basic-maven-example      \`
`    -DgroupId=com.uqbar-project.edu       \`
`    -DarchetypeArtifactId=???`

Lo importante acá es saber qué archetype quiero usar, por ejemplo: maven-archetype-webapp

### Paso 2: Agregar bibliotecas necesarias al pom

Luego de ejecutar eso tendremos el código generado en el directorio con el nombre indicado en el (en mi caso ). En ese directorio encontrarán el , si vamos a utilizar otras bibliotecas podemos agregarlas ya mismo, por ejemplo:

`       `<dependency>
`           `<groupId>`log4j`</groupId>
`           `<artifactId>`log4j`</artifactId>
`           `<version>`1.2.13`</version>
`       `</dependency>
`       `<dependency>
`           `<groupId>`commons-collections`</groupId>
`           `<artifactId>`commons-collections`</artifactId>
`           `<version>`3.1`</version>
`       `</dependency>

### Paso 3: Generación de la información para eclipse

Luego, parados en la carpeta en donde está el debemos ejecutar:

`mvn eclipse:eclipse -DdownloadSources=true -DdownloadJavadocs=true`

Esto nos creará los archivos de configuración del eclipse: y . También se ocupará de bajar de Internet todas las bibliotecas que le indicamos (por eso hay que tener conexión a Internet para ejecutar estas cosas).

**Ojo:** En este punto es importante leer los warnings que tira el maven si no puede bajar las bibliotecas, para eso hay que leer todo lo que dice, no alcanza con quedarse con el final.

### Paso 4: Importación de la información al eclipse y al tomcat

Luego, desde el eclipse se deberá importar el proyecto, utilizando la opción "Import" -&gt; "Existing projects into workspace".

Publicarlo en svn
-----------------

[Publicar un proyecto en svn](publicar-un-proyecto-en-svn.html)

Al publicarlo es importante agregar al <svn:ignore> los siguientes archivos y directorios:

-   Directorio target y subdirectorios.
-   Archivos {{code|.project}, {{code|.classpath}.

Luego quien se lo baje deberá ejecutar únicamente los pasos 3 y 4.

Agregar más referencias posteriormente
--------------------------------------

Para agregar dependencias posteriormente se debe realizar de la siguiente manera:

-   Modificar el siguiendo las instrucciones en el paso 2.
{'fraction_non_alphanumeric': 0.10063463281958296, 'fraction_numerical': 0.005439709882139619, 'mean_word_length': 3.2627511591962906, 'pattern_counts': {'":': 0, '<': 37, '<?xml version=': 0, '>': 37, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 4, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '1884760', 'n_tokens_mistral': 1884, 'n_tokens_neox': 1733, 'n_words': 646}