Herramientas java




-1-
                          UPM
Classpath
  Variable de entorno necesaria para
   encontrar bibliotecas de funciones (jar).


  Distinguir entre las múl...
Desarrollo java
  Necesidad de herramientas de desarrollo.
  Utilidades
      4  onstruir programas.
       C
      4  u...
Herramientas
           proporcionadas
  Código de dominio publico de la mayor
   calidad:
      4  onstrucción de progra...
ANT




-5-
            UPM
¿Que es ANT ?
  Plataforma para la construcción de
   programas (equivalente a make y makefiles).
  Portable, totalmente...
Utilidad
  Independiente de la plataforma
      4 Solo requiere una JVM
      4 Independiente de maquina (windows, unix, ...
Estructura de un fichero ant
  Project
      4  na colección de objetivos de alto nivel.
       U
  Property
      4  na...
Funcionamiento
  Existe un fichero con el proyecto en la raíz
   (build.xml).
  Cada fichero contiene uno o mas objetivo...
Estructura típica de
                directorios
  project
         4 README files, build.xml, etc.
         4 classes
  ...
Revisión rápida de XML
  Comenzamos con la línea:
     <?xml version=quot;1.0quot; encoding=quot;UTF-8quot;?>
  Las etiq...
Etiqueta Project
         <project name=quot;MyProjectquot;
          default=quot;distquot; basedir=quot;.quot;>
        ...
Etiqueta Target
         <target name=quot;distquot; depends=quot;initquot;
           description=quot;Makes a distributi...
Algunas referencias a
               ficheros
  Pattern-sets
         <patternset id=quot;my.patternquot;>
             <...
Un build.xml sencillo
         <?xml version=quot;1.0quot; encoding=quot;UTF-8quot;?>
         <project name=quot;Testquot...
Tareas incorporadas
  Ant              Echo
  AntCall          Exec
  AntStructure     ExecOn
  Apply            F...
Tareas incorporadas (II)
  Gzip                Property
  Jar                 Replace
  Java                Rmic
  ...
Tareas incorporadas (III)
  Tstamp
  Unjar
  Untar
  Unwar
  Unzip
  Uptodate
  War
  Zip


- 18 -
               ...
Tareas Opcionales
  ANTLR             JUnitReport
  Cab               Native2Ascii
  Depend            PropertyFile
...
Instalación en Windows
  Verificar instalación de java.
  Poner variables:
           4  AVA_HOME a donde este instalado...
Pantalla
  Indica las tareas que va ejecutando:

         4 Ejemplo:
         Searching for build.xml ...
         Buildf...
Recursos
  http://jakarta.apache.org/ant/
         4  agina principal de ant
          P
  http://jakarta.apache.org/ant...
LOG4J




- 23 -
                 UPM
Depurar / notificar con
                println

         public class HelloWorld
         {
             public static vo...
Complejidad de
               aplicaciones reales
           Aplicaciones multihilo y multiusuario.
           Puede ser...
Hello Log4j
import org.apache.log4j.*;
public class HelloLog4j
{
         private static Logger logger = Logger.getLogger
...
Salida por pantalla

0 [main] DEBUG HelloLog4j - In the main method
0 [main] INFO HelloLog4j - What a beautiful day.
10 [m...
org.apache.log4j.Level

     Orden:

          DEBUG < INFO < WARN < ERROR < FATAL


     Otros niveles:
         4  evel....
Algunos objetos
  java.util.logging Handlers
         StreamHandler
         ConsoleHandler
         FileHandler
        ...
Java logger
  Añadido en jdk 1.5


  No hay necesidad de instalar nada.


  java.util.logging.Logger
  Uso opcional de...
Recursos
  http://jakarta.apache.org/log4j/
         4  agina principal de log4j
          P
  http://jakarta.apache.org...
Demostración eclipse



- 32 -
                                UPM
Upcoming SlideShare
Loading in …5
×

Ant Log4j

2,025 views

Published on

Introducción a las herramientas java para el laboratorio de software de comunicaciones

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
2,025
On SlideShare
0
From Embeds
0
Number of Embeds
120
Actions
Shares
0
Downloads
42
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Ant Log4j

  1. 1. Herramientas java -1- UPM
  2. 2. Classpath   Variable de entorno necesaria para encontrar bibliotecas de funciones (jar).   Distinguir entre las múltiples instalaciones.   Uso complementario: 4  ariable JAVA_HOME V -2- UPM
  3. 3. Desarrollo java   Necesidad de herramientas de desarrollo.   Utilidades 4  onstruir programas. C 4  utomatizar pruebas. A 4  acilidades de trazado. F   Entornos integrados: 4  esados: matar moscas a cañonazos. P 4  aros: C •  Excepto netbeans: http://www.netbeans.org •  Gratis pero hace falta memoria (>= 128 Mb) -3- UPM
  4. 4. Herramientas proporcionadas   Código de dominio publico de la mayor calidad: 4  onstrucción de programas: C • ANT 4  estión de trazas y LOGS: G • LOG4J 4  ntorno : eclipse - netbeans E -4- UPM
  5. 5. ANT -5- UPM
  6. 6. ¿Que es ANT ?   Plataforma para la construcción de programas (equivalente a make y makefiles).   Portable, totalmente escrito en java: Independiente de la plataforma.   Mejora ciertas características de make: ficheros de configuración XML.   Código abierto (parte del proyecto jakarta de apache).   Posibilidad de realizar scripts sencillos -6- UPM
  7. 7. Utilidad   Independiente de la plataforma 4 Solo requiere una JVM 4 Independiente de maquina (windows, unix, mac). No importan path o retornos de carro.   Fácil de utilizar 4 Incluye facilidades típicas de construcción de programas. 4 Disponibles tareas encontradas útiles por usuarios. 4 Elimina ciertos detalles crípticos de make.   Fácil de extender 4 Crear una nueva tarea es tan sencillo como heredar una clase y añadir el comportamiento deseado.   Estándar de facto en programas Java. -7- UPM
  8. 8. Estructura de un fichero ant   Project 4  na colección de objetivos de alto nivel. U   Property 4  na variable de ant: usado para configurar. U   Target 4  n conjunto de tareas a ejecutar para conseguir U un cierto objetivo.   Task 4  na unidad de ejecución (cada paso). U -8- UPM
  9. 9. Funcionamiento   Existe un fichero con el proyecto en la raíz (build.xml).   Cada fichero contiene uno o mas objetivos (target)   Cada objetivo se ejecuta: 4  or que el proyecto depende de el P 4  e indica el nombre por línea de comandos. S   Cada tarea se ejecuta (si es necesaria) una sola vez.   Algunas tareas pueden ser condicionales. -9- UPM
  10. 10. Estructura típica de directorios   project 4 README files, build.xml, etc. 4 classes •  ficheros. .class 4 doc •  Documentación del proyecto •  api –  Ficheros javadoc generados 4 docroot •  Ficheros necesarios para aplicaciones web (HTML, JSP, XML, etc): 4 lib •  Ficheros JAR con librerías necesarias para el proyecto. 4 Src •  Código fuente del proyecto - 10 - UPM
  11. 11. Revisión rápida de XML   Comenzamos con la línea: <?xml version=quot;1.0quot; encoding=quot;UTF-8quot;?>   Las etiquetas van entre < y > y finalizan con / <tag>body</tag> or <tag/>   Las etiquetas distinguen mayúsculas y minúsculas (distinto de HTML).   Las etiquetas pueden ser autocontenidas <tag attribute=quot;valuequot;/>   Los valores y las strings tienen que ir entre comillas. - 11 - UPM
  12. 12. Etiqueta Project <project name=quot;MyProjectquot; default=quot;distquot; basedir=quot;.quot;> ... </project>   Objetivo principal. Indica que tareas son obligatorias.   Donde esta el código: 4  so de paths relativos para evitar problemas. U - 12 - UPM
  13. 13. Etiqueta Target <target name=quot;distquot; depends=quot;initquot; description=quot;Makes a distributionquot; if=quot;code-presentquot; unless=quot;time-is-shortquot;> ... </target>   Objetivo a alcanzar. Obligatorio el nombre (“name”) de la tarea.   Puede depender de otras que han de completarse antes.   El resto de campos son opcionales. - 13 - UPM
  14. 14. Algunas referencias a ficheros   Pattern-sets <patternset id=quot;my.patternquot;> <include name=quot;**/*.javaquot;/> <exclude name=quot;**/*Test*quot;/> </patternset>   File-sets <fileset dir=quot;./sourcequot;> <patternset refid=quot;my.pattern“/> </fileset> - 14 - UPM
  15. 15. Un build.xml sencillo <?xml version=quot;1.0quot; encoding=quot;UTF-8quot;?> <project name=quot;Testquot; default=quot;distquot; basedir=quot;.quot;> <target name=quot;distquot;> <javac srcdir=quot;.quot;/> </target> </project>   Mínimo fichero que compila todos los .java de un directorio recursivamente. - 15 - UPM
  16. 16. Tareas incorporadas   Ant   Echo   AntCall   Exec   AntStructure   ExecOn   Apply   Fail   Available   Filter   Chmod   FixCRLF   Copy   GenKey   Cvs   Get   Delete   GUnzip - 16 - UPM
  17. 17. Tareas incorporadas (II)   Gzip   Property   Jar   Replace   Java   Rmic   Javac   SignJar   Javadoc   Sql   Mail   Style   Mkdir   Tar   Move   Taskdef   Patch   Touch - 17 - UPM
  18. 18. Tareas incorporadas (III)   Tstamp   Unjar   Untar   Unwar   Unzip   Uptodate   War   Zip - 18 - UPM
  19. 19. Tareas Opcionales   ANTLR   JUnitReport   Cab   Native2Ascii   Depend   PropertyFile   FTP   RenameExtensions   JavaCC   Script   Javah   Sound   JJTree   Stylebook   Jlink   Telnet   JUnit   Test - 19 - UPM
  20. 20. Instalación en Windows   Verificar instalación de java.   Poner variables: 4  AVA_HOME a donde este instalado el JDK: J •  Como C:jdk1.4 4  ñadir al CLASSPATH A •  Ant.jar y xerces.jar 4  ñadir al PATH A •  %ANT_HOME%bin   Verificar documentació: http://ant.apache.org/manual/install.html - 20 - UPM
  21. 21. Pantalla   Indica las tareas que va ejecutando: 4 Ejemplo: Searching for build.xml ... Buildfile: C:XMLProgLabsFrameworkbuild.xml prepare: [mkdir] Created dir: C:XMLProgLabsFrameworkclasses compile: [javac] Compiling 26 source files to C:XMLProgLabs Frameworkclasses war: [war] Building war: C:XMLProgLabsFrameworkshopping.war undeploy: [delete] Deleting directory C:Tomcatwebappsshopping [delete] Deleting: C:Tomcatwebappsshopping.war deploy: [copy] Copying 1 files to C:Tomcatwebapps BUILD SUCCESSFUL Total time: 5 seconds - 21 - UPM
  22. 22. Recursos   http://jakarta.apache.org/ant/ 4  agina principal de ant P   http://jakarta.apache.org/ant/manual/ index.html 4  anual en línea de ANT (normalmente M suficiente editar uno existente).   http://jakarta.apache.org/ant/resources.html 4  rtículos, presentaciones y otros. A - 22 - UPM
  23. 23. LOG4J - 23 - UPM
  24. 24. Depurar / notificar con println public class HelloWorld { public static void main(String[] args) { System.out.println(“Hello world!”); } } - 24 - UPM
  25. 25. Complejidad de aplicaciones reales   Aplicaciones multihilo y multiusuario.   Puede ser un servidor sin “pantalla” y por lo tanto sin posibilidad de imprimir.   Distintas instancias de objetos y servicios: mensajes mezclados en pantalla.   Utilidad: 4  epurar. D 4  aber lo que esta pasando S 4  ontrol de seguridad: control de ataques/ C hackers. - 25 - 4  edireccionable a fichero. R UPM
  26. 26. Hello Log4j import org.apache.log4j.*; public class HelloLog4j { private static Logger logger = Logger.getLogger (HelloLog4j.class); // estático para inicializar. // necesario añadir esta línea en cada clase. public static void main(String[] args) { BasicConfigurator.configure(); // configurar 1 vez en el programa logger.debug(“In the main methodquot;); logger.info(quot;What a beautiful day.quot;); logger.error(“This is an error message.”); } } - 26 - UPM
  27. 27. Salida por pantalla 0 [main] DEBUG HelloLog4j - In the main method 0 [main] INFO HelloLog4j - What a beautiful day. 10 [main] ERROR HelloLog4j - This is an error message. - 27 - UPM
  28. 28. org.apache.log4j.Level Orden: DEBUG < INFO < WARN < ERROR < FATAL Otros niveles: 4  evel.ALL L 4  evel.OFF L - 28 - UPM
  29. 29. Algunos objetos   java.util.logging Handlers StreamHandler ConsoleHandler FileHandler SocketHandler MemoryHandler   java.util.logging Formatters SimpleFormatter XMLFormatter   Posibilidad de configurar con fichero XML. - 29 - UPM
  30. 30. Java logger   Añadido en jdk 1.5   No hay necesidad de instalar nada.   java.util.logging.Logger   Uso opcional de uno u otro: Decisión de diseño. - 30 - UPM
  31. 31. Recursos   http://jakarta.apache.org/log4j/ 4  agina principal de log4j P   http://jakarta.apache.org/log4j/doc/index.html 4  anual en línea de ANT (normalmente M suficiente editar uno existente).   http://jakarta.apache.org/log4j/resources.html 4  rtículos, presentaciones y otros. A - 31 - UPM
  32. 32. Demostración eclipse - 32 - UPM

×