Software de la cátedra

Instructivo para bajarse los ejemplos de la cátedra

  • Necesitan bajarse el plugin de SVN si no lo descargaron antes. Este es el tutorial (debajo del título "Installation Instructions").
  • También necesitan tener instalado Maven, que es una herramienta que se encarga de bajar los .jars que necesita cada proyecto y permite establecer dependencias entre proyectos. Para ayudarte acá te dejamos un tutorial de instalación de Maven
  • Luego tienen que apuntar el repositorio de SVN. Abrir perspectiva "SVN Repository Exploring" y en la solapa "SVN Repositories"
SVN0.jpg SVN1.jpg

hacen New > Repository Location. En URL escriben: http://svn2.xp-dev.com/svn/utn-tadp-projects/
SVN2.jpg

  • Definir la variable mvn
    • Window > Preferences > Run/Debug > String Substitution > New…
    • Definir mvn y apuntarla a {m2_home}\bin\mvn.bat, donde m2_home es el directorio donde instalaron el Maven. En el ejemplo de abajo, si Maven está instalado en D:\Program Files\Maven\apache-maven-2.1.0…
catedra0.PNG
  • Checkoutear parent-project.
    • Browsear la repository location creada
    • Botón derecho sobre parent-project, opción "Checkout…"
    • Elegir "Check out as project in the workspace", todo lo demás como queda por default, "Finish"
  • "Instalar" parent-project
    • En la perspectiva "Java", vista "Package Explorer", abrir la carpeta "parent-project" > "eclipse" > "launchers".
    • Botón derecho sobre el archivo "Install Project.launch" > "Run As" > "Install Project"
    • En la consola debe decir algo como:
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESSFUL
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 4 seconds
[INFO] Finished at: Mon Jun 08 10:47:30 VET 2009
[INFO] Final Memory: 10M/18M
[INFO] ------------------------------------------------------------------------

Es MUY importante asegurarse de tener seleccionado el proyecto parent-project al hacer esto, la instalación se ejecuta sobre el "proyecto actual", si no tienen un proyecto seleccionado les va a decir un error así:

[ERROR] BUILD ERROR
[INFO] ------------------------------------------------------------------------
[INFO] Cannot execute mojo: resources. It requires a project with an existing pom.xml, but the build is not using one.
[INFO] ------------------------------------------------------------------------
[INFO] For more information, run Maven with the -e switch
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 2 seconds
[INFO] Finished at: Sat Jun 13 18:59:50 ART 2009
[INFO] Final Memory: 3M/7M
[INFO] ------------------------------------------------------------------------

Eso creó en nuestra máquina un repositorio local de maven, donde se guardarán todos los jars que usemos a través de la herramienta (que son los jars que vamos a necesitar para compilar los proyectos subsiguientes).

También "instaló" el parent-project en ese repositorio, en el parent-project hay configuraciones básicas de maven que usarán los demás proyectos; fundamentalmente lo que indica son urls que utilizará el maven para bajar los distintos jars que vayamos necesitando. Todos los demás proyectos que se bajen del svn dependen de que esto esté bien configurado.

Para poder utilizar el repositorio maven desde el eclipse además hay que agregar al eclipse una variable que indique en qué lugar está el repositorio con esos jars.

Para eso: Window, Preferences, Java, Build Path, Classpath Variables, New. La variable debe llamarse M2_REPO y apuntar al directorio en el que se creó el repositorio maven. Normalmente eso es un directorio ".m2/repository" en la carpeta de archivos del usuario.

En mi máquina esa carpeta es "C:/Users/Nico/.m2/repository", en un windows xp puede ser "C:/Documents and Settings/Nico/.m2/repository", en linux "/home/Nico/.m2/repository".

Instrucciones generales para descargar proyectos

Cada uno de los ejemplos se compone de una lista de proyectos para lo cual cuando se desea bajar un ejemplo en el instructivo particular de ese ejemplo figura el listado de proyectos con 3 características:

  • nombre del proyecto
  • si está o no "mavenizado": esto es, si hay un archivo .pom que permite encontrar los .jares y dependencias del proyecto o hay que bajarlos a mano, abajo se define el instructivo para cada uno de los proyectos (ambos comparten un primer paso en común pero los mavenizados requieren un paso extra).
  • la ubicación desde donde hay que checkoutear el fuente (es opcional, si no está especificado se considera http://svn2.xp-dev.com/svn/utn-tadp-projects)

Descargar proyectos ("mavenizados" y "no mavenizados")

  • Checkoutear el proyecto según el nombre que figura en la lista (buscarlo por default en la carpeta http://svn2.xp-dev.com/svn/utn-tadp-projects salvo que se especifique otro en particular, esto es por diferentes branches que pudiera haber).
    • Browsear la repository location de la cátedra
    • Botón derecho sobre el proyecto en cuestión, opción "Checkout…"
    • Elegir "Check out as project in the workspace", todo lo demás como queda por default, "Finish"

Instalar proyectos (sólo para los "mavenizados")

  • "Instalar" el proyecto
    • En la perspectiva "Java", vista "Package Explorer" seleccionar el proyecto y luego del menú superior seleccionar "Run" > "External Tools" > "Install Project"
catedra6.PNG

Tener en cuenta que esta opción sólo nos aparecerá luego de haber instalado el parent-project. Por otro lado, es vital haber seleccionado antes el proyecto a instalar.
Esta acción hace que el maven baje a nuestra máquina todos los jars (y otras dependencias) necesarios para poder ejecutar el proyecto.

  • Si todo anduvo bien, en la consola debe decir algo como:
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESSFUL
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 4 seconds
[INFO] Finished at: Mon Jun 08 10:47:30 VET 2009
[INFO] Final Memory: 10M/18M
[INFO] ------------------------------------------------------------------------

Links

Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-ShareAlike 3.0 License