SlideShare una empresa de Scribd logo
Generación del  midlet  HolaMundo utilizando las herramientas de línea de comando Jorge Iván Meza Martínez < [email_address] > http://www.jorgeivanmeza.com/ http://educacion.misservicios.net/
Contenido ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Introducción KToolBar  es una herramienta muy útil provista por el JWTK ya que permite abstraer al desarrollador de varias de las actividades necesarias para la generación de los  midlets . Como ejercicio académico es interesante poder realizar estas actividades una a una y desde la línea de comandos para poder observar con precisión su papel e importancia dentro del proceso de desarrollo de las aplicaciones móviles. A continuación se realizarán las actividades necesarias para compilar, preverificar, empaquetar y ejecutar al midlet  HolaMundo  de manera similar a lo realizado durante la sesión anterior, sin embargo ahora utilizando únicamente los comandos básicos provistos por la plataforma Java. Para la elaboración de este documento se utilizará  Windows Vista , motivo por el cual ciertas ubicaciones o comandos relacionados con el  shell  podrán variar de acuerdo con el sistema operativo utilizado.
Herramientas ,[object Object],[object Object],[object Object],[object Object],[object Object]
Estructura de los directorios Por facilidad se va a utilizar la estructura de directorios creada durante la generación del  midlet  en la sesión anterior, sin embargo no es necesario seguirla con rigurosidad. Los directorios existentes son los siguientes. in  - Archivos binarios resultantes. ib  - Librerías de terceros. es  - Archivos de recursos. rc  - Código fuente. Recuerde que la ruta específica del proyecto se modifica de acuerdo a varias condiciones. c:sersUSUARIO 2mewtkVERSIÓN ppsHolaMundo
Limpieza de los directorios Como  primer paso  vamos a remover cualquier archivo binario producto de la generación del  midlet  con el  KtoolBar . Abra una ventana de  Símbolo del Sistema  o  shell  y ejecute los siguientes comandos. cd c:sersimezam2mewtk2.5.2 ppsHolaMundo Recuerde adaptar la ruta según corresponda. del bin del classes del tmpclasses
Variables de ambiente El  segundo paso  es la actualización de las variables de ambiente para incluír al JWTK. set J2ME_HOME=C:TK2.5.2 PATH=%PATH%;%J2ME_HOME%in set CLASSPATH=%CLASSPATH%;%J2ME_HOME%ib;.
Compilación El  tercer paso  es la compilación del código fuente. javac  -bootclasspath  %J2ME_HOME% ibldcapi11.jar; %J2ME_HOME% ibidpapi20.jar  -d tmpclasses  -classpath tmpclasses;classes   -g:none -source 1.4 -target 1.4  srcolaMundoMidlet.java Tenga en cuenta que el comando anterior se debe escribir en una única línea y sólo hay un espacio antes del nombre del archivo donde se encuentra el código fuente del  midlet .
Compilación La compilación toma los archivos de código fuente ( src/HolaMundoMidlet.java ) y los convierte en su correspondiente versión de bytecodes binarios ( tmpclasses/HolaMundoMidlet.class ) Nótese como se especifica utilizar las clases pertenecientes a la plataforma J2ME: CLDC y MIDP, antes de las existentes en la J2SE.
Preverificación El  cuarto paso  es la preverificación de las clases recién compiladas.  Recuérdese que esta verificación inicial se realiza en el entorno de desarrollo. preverify  -classpath  %J2ME_HOME% ibldcapi11.jar; %J2ME_HOME% ibidpapi20.jar; tmpclasses   -d classes  HolaMundoMidlet Nótese como la fase de  compilación  deja la clase compilada en el directorio  tmpclasses  y la fase de  preverificación  deja la clase compilada y preverificada en el directorio  classes .
Empaquetamiento ,[object Object],[object Object],[object Object],[object Object],[object Object]
Creación del archivo de manifiesto El archivo de manifiesto especifica el contenido del archivo JAR. MIDlet-1: HolaMundo, , HolaMundoMidlet MIDlet-Name: HolaMundo MIDlet-Version: 1.0.0 MIDlet-Vendor: Jorge I. Meza MicroEdition-Configuration: CLDC-1.1 MicroEdition-Profile: MIDP-2.0 (salto de línea)
Creación del archivo de manifiesto El manifiesto deberá guardarse en el directorio  in  con el nombre de archivo  Manifest.mf . Después de la última línea: atributo  MicroEdition-Profile   para este caso, deberá haber un salto de línea, de lo contrario no será tenido en cuenta. Para más información acerca del archivo de manifiesto consultar el documento  Understanding the Manifiest .
Creación del archivo JAR El archivo JAR empaqueta las clases y recursos del  midlet  en una única ubicación con formato ZIP.  Su descripción es realizada por el documento de manifiesto recién creado. jar  cvfm  binolaMundo.jar   binanifest.mf  -C  classes . El comando anterior solicita la creación del archivo JAR ( HolaMundo.jar ) a ubicarse en el directorio  bin , con el contenido del directorio  classes  y el documento de manifiesto  binanifest.mf .
Creación del archivo JAD El contenido del archivo JAD ya fue tratado en una sesión anterior, por este motivo sólo se hará referencia al específico para el caso práctico. MIDlet-1: HolaMundo, , HolaMundoMidlet MIDlet-Name: HolaMundo MIDlet-Version: 1.0.0 MIDlet-Vendor: Jorge I. Meza MIDlet-Jar-URL: HolaMundo.jar MIDlet-Jar-Size: 1216 MicroEdition-Configuration: CLDC-1.1 MicroEdition-Profile: MIDP-2.0 (salto de línea)
Creación del archivo JAD El valor del atributo  MIDlet-Jar-Size  deberá coincidir con el tamaño exacto del archivo JAR ubicado ya en el directorio  in . El documento descriptor deberá almacenarse bajo la carpeta  in  con el mismo nombre del archivo JAR y con la extensión JAD:  HolaMundo.jad . Para mas información acerca de los atributos disponibles para el archivo JAD consulte el documento  Retrieving MIDlet Attributes .
Ejecución (emulación) El  sexto paso  consiste en la prueba final del  midlet  empaquetado y listo para ser distribuído.  Esta ejecución se realiza utilizando el emulador de dispositivos móviles incluído por el JWTK. %J2ME_HOME% inemulator.exe  -Xdescriptor  binolaMundo.jad
Enlaces de interés Understanding the Process of MIDlet Creation--Without the Toolkit http://today.java.net/pub/a/today/2005/02/09/j2me1.html?page=2 Packaging Programs in JAR Files http://java.sun.com/docs/books/tutorial/deployment/jar/ Understanding the Manifest http://java.sun.com/developer/Books/javaprogramming/JAR/basics/manifest.html Emuladores MIDP http://developers.sun.com/mobility/midp/articles/emulators/ Sun Java Wireless Toolkit for CLDC User's Guide (versión 2.5.2) http://java.sun.com/products/sjwtoolkit/wtk2.5.2/docs/UserGuide-html/index.html
Fin de la presentación. Creative Commons (CC)

Más contenido relacionado

Similar a Generación del midlet HolaMundo utilizando las herramientas de línea de comando

Generación del midlet HolaMundo utilizando el JWTK
Generación del midlet HolaMundo utilizando el JWTKGeneración del midlet HolaMundo utilizando el JWTK
Generación del midlet HolaMundo utilizando el JWTK
Jorge Iván Meza Martínez
 
Openldap
OpenldapOpenldap
Openldap
ZOniia ZOmare
 
03. empaquetado de aplicaciones jee
03. empaquetado de aplicaciones jee03. empaquetado de aplicaciones jee
03. empaquetado de aplicaciones jee
yennylou
 
Admin Manual
Admin ManualAdmin Manual
Admin Manual
Escola del Treball
 
Entornodedesarrollodejava
EntornodedesarrollodejavaEntornodedesarrollodejava
Entornodedesarrollodejava
Victor Zapata
 
La Arquitectura De Netbeans V2
La Arquitectura De Netbeans V2La Arquitectura De Netbeans V2
La Arquitectura De Netbeans V2
ralphkui
 
FROM lost to the Docker 2020
FROM lost to the Docker 2020FROM lost to the Docker 2020
FROM lost to the Docker 2020
BelnGonzlezGarca1
 
TUTORIAL
TUTORIALTUTORIAL
TUTORIAL
ariannalizeeth
 
FROM lost to the docker
FROM lost to the dockerFROM lost to the docker
FROM lost to the docker
Irene Alonso Candelario
 
Proyecto final pdm
Proyecto final pdmProyecto final pdm
Proyecto final pdm
jaime zamora
 
Un ejemplo sencillo con ejb
Un ejemplo sencillo con ejbUn ejemplo sencillo con ejb
Un ejemplo sencillo con ejblalov777
 
[ES] Fundamentos esenciales de la plataforma java
[ES] Fundamentos esenciales de la plataforma java[ES] Fundamentos esenciales de la plataforma java
[ES] Fundamentos esenciales de la plataforma java
Eudris Cabrera
 

Similar a Generación del midlet HolaMundo utilizando las herramientas de línea de comando (20)

Generación del midlet HolaMundo utilizando el JWTK
Generación del midlet HolaMundo utilizando el JWTKGeneración del midlet HolaMundo utilizando el JWTK
Generación del midlet HolaMundo utilizando el JWTK
 
Herramientas Java
Herramientas JavaHerramientas Java
Herramientas Java
 
Openldap
OpenldapOpenldap
Openldap
 
03. empaquetado de aplicaciones jee
03. empaquetado de aplicaciones jee03. empaquetado de aplicaciones jee
03. empaquetado de aplicaciones jee
 
02 instalación
02 instalación02 instalación
02 instalación
 
Tema 4
Tema 4Tema 4
Tema 4
 
Admin Manual
Admin ManualAdmin Manual
Admin Manual
 
Entornodedesarrollodejava
EntornodedesarrollodejavaEntornodedesarrollodejava
Entornodedesarrollodejava
 
La Arquitectura De Netbeans V2
La Arquitectura De Netbeans V2La Arquitectura De Netbeans V2
La Arquitectura De Netbeans V2
 
Prueba1.pdf
Prueba1.pdfPrueba1.pdf
Prueba1.pdf
 
FROM lost to the Docker 2020
FROM lost to the Docker 2020FROM lost to the Docker 2020
FROM lost to the Docker 2020
 
TUTORIAL
TUTORIALTUTORIAL
TUTORIAL
 
FROM lost to the docker
FROM lost to the dockerFROM lost to the docker
FROM lost to the docker
 
Proyecto final pdm
Proyecto final pdmProyecto final pdm
Proyecto final pdm
 
Un ejemplo sencillo con ejb
Un ejemplo sencillo con ejbUn ejemplo sencillo con ejb
Un ejemplo sencillo con ejb
 
[ES] Fundamentos esenciales de la plataforma java
[ES] Fundamentos esenciales de la plataforma java[ES] Fundamentos esenciales de la plataforma java
[ES] Fundamentos esenciales de la plataforma java
 
Actividad3.1
Actividad3.1Actividad3.1
Actividad3.1
 
Net3
Net3Net3
Net3
 
Netbeans manual 3
Netbeans manual 3Netbeans manual 3
Netbeans manual 3
 
Jlex y cup en java
Jlex y cup en javaJlex y cup en java
Jlex y cup en java
 

Más de Jorge Iván Meza Martínez

Presentación grupo de investigación UAM, 201203
Presentación grupo de investigación UAM, 201203Presentación grupo de investigación UAM, 201203
Presentación grupo de investigación UAM, 201203Jorge Iván Meza Martínez
 
Mercadeo en la era de la web 2.0, UniQuindio 20110517
Mercadeo en la era de la web 2.0, UniQuindio 20110517Mercadeo en la era de la web 2.0, UniQuindio 20110517
Mercadeo en la era de la web 2.0, UniQuindio 20110517Jorge Iván Meza Martínez
 
GridUAM, presentación del proyecto - 20110128
GridUAM, presentación del proyecto - 20110128GridUAM, presentación del proyecto - 20110128
GridUAM, presentación del proyecto - 20110128Jorge Iván Meza Martínez
 
Charla introducción a processing - 2010/09
Charla introducción a processing - 2010/09Charla introducción a processing - 2010/09
Charla introducción a processing - 2010/09
Jorge Iván Meza Martínez
 
Presentación introducción taller cluster 2010/07
Presentación introducción taller cluster 2010/07Presentación introducción taller cluster 2010/07
Presentación introducción taller cluster 2010/07Jorge Iván Meza Martínez
 
Historia breve de un compromiso de seguridad - Instalación de RedHat 8.0
Historia breve de un compromiso de seguridad - Instalación de RedHat 8.0Historia breve de un compromiso de seguridad - Instalación de RedHat 8.0
Historia breve de un compromiso de seguridad - Instalación de RedHat 8.0Jorge Iván Meza Martínez
 
Instalacion Básica De Drupal 6
Instalacion Básica De Drupal 6Instalacion Básica De Drupal 6
Instalacion Básica De Drupal 6
Jorge Iván Meza Martínez
 
Buscador de Talento Amigo - Presentación
Buscador de Talento Amigo - PresentaciónBuscador de Talento Amigo - Presentación
Buscador de Talento Amigo - Presentación
Jorge Iván Meza Martínez
 
Práctica: distribución de midlets mediante OTA con J2ME - parte I
Práctica: distribución de midlets mediante OTA con J2ME - parte IPráctica: distribución de midlets mediante OTA con J2ME - parte I
Práctica: distribución de midlets mediante OTA con J2ME - parte I
Jorge Iván Meza Martínez
 
Generación del midlet HolaMundo utilizando EclipseME
Generación del midlet HolaMundo utilizando EclipseMEGeneración del midlet HolaMundo utilizando EclipseME
Generación del midlet HolaMundo utilizando EclipseME
Jorge Iván Meza Martínez
 
Introducción a Kohana Framework
Introducción a Kohana FrameworkIntroducción a Kohana Framework
Introducción a Kohana Framework
Jorge Iván Meza Martínez
 
Introducción a la plataforma J2ME
Introducción a la plataforma J2MEIntroducción a la plataforma J2ME
Introducción a la plataforma J2ME
Jorge Iván Meza Martínez
 
Disección del midlet Hola Mundo en J2ME
Disección del midlet Hola Mundo en J2MEDisección del midlet Hola Mundo en J2ME
Disección del midlet Hola Mundo en J2ME
Jorge Iván Meza Martínez
 
Desarrollo de Mi Primer Mapplet
Desarrollo de Mi Primer MappletDesarrollo de Mi Primer Mapplet
Desarrollo de Mi Primer Mapplet
Jorge Iván Meza Martínez
 
Introducción al desarrollo de Google Mapplets
Introducción al desarrollo de Google MappletsIntroducción al desarrollo de Google Mapplets
Introducción al desarrollo de Google Mapplets
Jorge Iván Meza Martínez
 
Midlets con J2ME
Midlets con J2MEMidlets con J2ME
Midlets con J2ME
Jorge Iván Meza Martínez
 

Más de Jorge Iván Meza Martínez (17)

Presentación grupo de investigación UAM, 201203
Presentación grupo de investigación UAM, 201203Presentación grupo de investigación UAM, 201203
Presentación grupo de investigación UAM, 201203
 
Presentación GridUAM 201112
Presentación GridUAM 201112Presentación GridUAM 201112
Presentación GridUAM 201112
 
Mercadeo en la era de la web 2.0, UniQuindio 20110517
Mercadeo en la era de la web 2.0, UniQuindio 20110517Mercadeo en la era de la web 2.0, UniQuindio 20110517
Mercadeo en la era de la web 2.0, UniQuindio 20110517
 
GridUAM, presentación del proyecto - 20110128
GridUAM, presentación del proyecto - 20110128GridUAM, presentación del proyecto - 20110128
GridUAM, presentación del proyecto - 20110128
 
Charla introducción a processing - 2010/09
Charla introducción a processing - 2010/09Charla introducción a processing - 2010/09
Charla introducción a processing - 2010/09
 
Presentación introducción taller cluster 2010/07
Presentación introducción taller cluster 2010/07Presentación introducción taller cluster 2010/07
Presentación introducción taller cluster 2010/07
 
Historia breve de un compromiso de seguridad - Instalación de RedHat 8.0
Historia breve de un compromiso de seguridad - Instalación de RedHat 8.0Historia breve de un compromiso de seguridad - Instalación de RedHat 8.0
Historia breve de un compromiso de seguridad - Instalación de RedHat 8.0
 
Instalacion Básica De Drupal 6
Instalacion Básica De Drupal 6Instalacion Básica De Drupal 6
Instalacion Básica De Drupal 6
 
Buscador de Talento Amigo - Presentación
Buscador de Talento Amigo - PresentaciónBuscador de Talento Amigo - Presentación
Buscador de Talento Amigo - Presentación
 
Práctica: distribución de midlets mediante OTA con J2ME - parte I
Práctica: distribución de midlets mediante OTA con J2ME - parte IPráctica: distribución de midlets mediante OTA con J2ME - parte I
Práctica: distribución de midlets mediante OTA con J2ME - parte I
 
Generación del midlet HolaMundo utilizando EclipseME
Generación del midlet HolaMundo utilizando EclipseMEGeneración del midlet HolaMundo utilizando EclipseME
Generación del midlet HolaMundo utilizando EclipseME
 
Introducción a Kohana Framework
Introducción a Kohana FrameworkIntroducción a Kohana Framework
Introducción a Kohana Framework
 
Introducción a la plataforma J2ME
Introducción a la plataforma J2MEIntroducción a la plataforma J2ME
Introducción a la plataforma J2ME
 
Disección del midlet Hola Mundo en J2ME
Disección del midlet Hola Mundo en J2MEDisección del midlet Hola Mundo en J2ME
Disección del midlet Hola Mundo en J2ME
 
Desarrollo de Mi Primer Mapplet
Desarrollo de Mi Primer MappletDesarrollo de Mi Primer Mapplet
Desarrollo de Mi Primer Mapplet
 
Introducción al desarrollo de Google Mapplets
Introducción al desarrollo de Google MappletsIntroducción al desarrollo de Google Mapplets
Introducción al desarrollo de Google Mapplets
 
Midlets con J2ME
Midlets con J2MEMidlets con J2ME
Midlets con J2ME
 

Último

Estructuras básicas_ conceptos de programación (1).docx
Estructuras básicas_ conceptos de programación  (1).docxEstructuras básicas_ conceptos de programación  (1).docx
Estructuras básicas_ conceptos de programación (1).docx
SamuelRamirez83524
 
Desarrollo de habilidades de pensamiento (2).pdf
Desarrollo de habilidades de pensamiento (2).pdfDesarrollo de habilidades de pensamiento (2).pdf
Desarrollo de habilidades de pensamiento (2).pdf
samuelvideos
 
Estructuras Básicas_Tecnología_Grado10-7.pdf
Estructuras Básicas_Tecnología_Grado10-7.pdfEstructuras Básicas_Tecnología_Grado10-7.pdf
Estructuras Básicas_Tecnología_Grado10-7.pdf
cristianrb0324
 
biogas industrial para guiarse en proyectos
biogas industrial para guiarse en proyectosbiogas industrial para guiarse en proyectos
biogas industrial para guiarse en proyectos
Luis Enrique Zafra Haro
 
MANUAL DEL DECODIFICADOR DVB S2. PARA VSAT
MANUAL DEL DECODIFICADOR DVB  S2. PARA VSATMANUAL DEL DECODIFICADOR DVB  S2. PARA VSAT
MANUAL DEL DECODIFICADOR DVB S2. PARA VSAT
Ing. Julio Iván Mera Casas
 
Estructuras Básicas_ Conceptos Basicos De Programacion.pdf
Estructuras Básicas_ Conceptos Basicos De Programacion.pdfEstructuras Básicas_ Conceptos Basicos De Programacion.pdf
Estructuras Básicas_ Conceptos Basicos De Programacion.pdf
IsabellaRubio6
 
Conceptos Básicos de Programación. Tecnología
Conceptos Básicos de Programación. TecnologíaConceptos Básicos de Programación. Tecnología
Conceptos Básicos de Programación. Tecnología
coloradxmaria
 
proyecto invernadero desde el departamento de tecnología para Erasmus
proyecto invernadero desde el departamento de tecnología para Erasmusproyecto invernadero desde el departamento de tecnología para Erasmus
proyecto invernadero desde el departamento de tecnología para Erasmus
raquelariza02
 
Semana 10_MATRIZ IPER_UPN_ADM_03.06.2024
Semana 10_MATRIZ IPER_UPN_ADM_03.06.2024Semana 10_MATRIZ IPER_UPN_ADM_03.06.2024
Semana 10_MATRIZ IPER_UPN_ADM_03.06.2024
CesarPazosQuispe
 
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
vazquezgarciajesusma
 
Diagrama de flujo - ingenieria de sistemas 5to semestre
Diagrama de flujo - ingenieria de sistemas 5to semestreDiagrama de flujo - ingenieria de sistemas 5to semestre
Diagrama de flujo - ingenieria de sistemas 5to semestre
DiegoCampos433849
 
Diagrama de flujo soporte técnico 5to semestre
Diagrama de flujo soporte técnico 5to semestreDiagrama de flujo soporte técnico 5to semestre
Diagrama de flujo soporte técnico 5to semestre
rafaelsalazar0615
 
Trabajo Coding For kids 1 y 2 grado 9-4.pdf
Trabajo Coding For kids 1 y 2 grado 9-4.pdfTrabajo Coding For kids 1 y 2 grado 9-4.pdf
Trabajo Coding For kids 1 y 2 grado 9-4.pdf
cj3806354
 
DESARROLO DE HABILIDADES DE PENSAMIENTO.pdf
DESARROLO DE HABILIDADES DE PENSAMIENTO.pdfDESARROLO DE HABILIDADES DE PENSAMIENTO.pdf
DESARROLO DE HABILIDADES DE PENSAMIENTO.pdf
marianabz2403
 
trabajo de tecnologia, segundo periodo 9-6f
trabajo de tecnologia, segundo periodo 9-6ftrabajo de tecnologia, segundo periodo 9-6f
trabajo de tecnologia, segundo periodo 9-6f
zoecaicedosalazar
 
3Redu: Responsabilidad, Resiliencia y Respeto
3Redu: Responsabilidad, Resiliencia y Respeto3Redu: Responsabilidad, Resiliencia y Respeto
3Redu: Responsabilidad, Resiliencia y Respeto
cdraco
 
Desarrollo de Habilidades de Pensamiento.
Desarrollo de Habilidades de Pensamiento.Desarrollo de Habilidades de Pensamiento.
Desarrollo de Habilidades de Pensamiento.
AlejandraCasallas7
 
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
vazquezgarciajesusma
 
Estructuras básicas_ conceptos básicos de programación.pdf
Estructuras básicas_  conceptos básicos de programación.pdfEstructuras básicas_  conceptos básicos de programación.pdf
Estructuras básicas_ conceptos básicos de programación.pdf
ItsSofi
 
DESARROLLO DE HABILIDADES DE PENSAMIENTO.pdf
DESARROLLO DE HABILIDADES DE PENSAMIENTO.pdfDESARROLLO DE HABILIDADES DE PENSAMIENTO.pdf
DESARROLLO DE HABILIDADES DE PENSAMIENTO.pdf
sarasofiamontezuma
 

Último (20)

Estructuras básicas_ conceptos de programación (1).docx
Estructuras básicas_ conceptos de programación  (1).docxEstructuras básicas_ conceptos de programación  (1).docx
Estructuras básicas_ conceptos de programación (1).docx
 
Desarrollo de habilidades de pensamiento (2).pdf
Desarrollo de habilidades de pensamiento (2).pdfDesarrollo de habilidades de pensamiento (2).pdf
Desarrollo de habilidades de pensamiento (2).pdf
 
Estructuras Básicas_Tecnología_Grado10-7.pdf
Estructuras Básicas_Tecnología_Grado10-7.pdfEstructuras Básicas_Tecnología_Grado10-7.pdf
Estructuras Básicas_Tecnología_Grado10-7.pdf
 
biogas industrial para guiarse en proyectos
biogas industrial para guiarse en proyectosbiogas industrial para guiarse en proyectos
biogas industrial para guiarse en proyectos
 
MANUAL DEL DECODIFICADOR DVB S2. PARA VSAT
MANUAL DEL DECODIFICADOR DVB  S2. PARA VSATMANUAL DEL DECODIFICADOR DVB  S2. PARA VSAT
MANUAL DEL DECODIFICADOR DVB S2. PARA VSAT
 
Estructuras Básicas_ Conceptos Basicos De Programacion.pdf
Estructuras Básicas_ Conceptos Basicos De Programacion.pdfEstructuras Básicas_ Conceptos Basicos De Programacion.pdf
Estructuras Básicas_ Conceptos Basicos De Programacion.pdf
 
Conceptos Básicos de Programación. Tecnología
Conceptos Básicos de Programación. TecnologíaConceptos Básicos de Programación. Tecnología
Conceptos Básicos de Programación. Tecnología
 
proyecto invernadero desde el departamento de tecnología para Erasmus
proyecto invernadero desde el departamento de tecnología para Erasmusproyecto invernadero desde el departamento de tecnología para Erasmus
proyecto invernadero desde el departamento de tecnología para Erasmus
 
Semana 10_MATRIZ IPER_UPN_ADM_03.06.2024
Semana 10_MATRIZ IPER_UPN_ADM_03.06.2024Semana 10_MATRIZ IPER_UPN_ADM_03.06.2024
Semana 10_MATRIZ IPER_UPN_ADM_03.06.2024
 
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
 
Diagrama de flujo - ingenieria de sistemas 5to semestre
Diagrama de flujo - ingenieria de sistemas 5to semestreDiagrama de flujo - ingenieria de sistemas 5to semestre
Diagrama de flujo - ingenieria de sistemas 5to semestre
 
Diagrama de flujo soporte técnico 5to semestre
Diagrama de flujo soporte técnico 5to semestreDiagrama de flujo soporte técnico 5to semestre
Diagrama de flujo soporte técnico 5to semestre
 
Trabajo Coding For kids 1 y 2 grado 9-4.pdf
Trabajo Coding For kids 1 y 2 grado 9-4.pdfTrabajo Coding For kids 1 y 2 grado 9-4.pdf
Trabajo Coding For kids 1 y 2 grado 9-4.pdf
 
DESARROLO DE HABILIDADES DE PENSAMIENTO.pdf
DESARROLO DE HABILIDADES DE PENSAMIENTO.pdfDESARROLO DE HABILIDADES DE PENSAMIENTO.pdf
DESARROLO DE HABILIDADES DE PENSAMIENTO.pdf
 
trabajo de tecnologia, segundo periodo 9-6f
trabajo de tecnologia, segundo periodo 9-6ftrabajo de tecnologia, segundo periodo 9-6f
trabajo de tecnologia, segundo periodo 9-6f
 
3Redu: Responsabilidad, Resiliencia y Respeto
3Redu: Responsabilidad, Resiliencia y Respeto3Redu: Responsabilidad, Resiliencia y Respeto
3Redu: Responsabilidad, Resiliencia y Respeto
 
Desarrollo de Habilidades de Pensamiento.
Desarrollo de Habilidades de Pensamiento.Desarrollo de Habilidades de Pensamiento.
Desarrollo de Habilidades de Pensamiento.
 
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
 
Estructuras básicas_ conceptos básicos de programación.pdf
Estructuras básicas_  conceptos básicos de programación.pdfEstructuras básicas_  conceptos básicos de programación.pdf
Estructuras básicas_ conceptos básicos de programación.pdf
 
DESARROLLO DE HABILIDADES DE PENSAMIENTO.pdf
DESARROLLO DE HABILIDADES DE PENSAMIENTO.pdfDESARROLLO DE HABILIDADES DE PENSAMIENTO.pdf
DESARROLLO DE HABILIDADES DE PENSAMIENTO.pdf
 

Generación del midlet HolaMundo utilizando las herramientas de línea de comando

  • 1. Generación del midlet HolaMundo utilizando las herramientas de línea de comando Jorge Iván Meza Martínez < [email_address] > http://www.jorgeivanmeza.com/ http://educacion.misservicios.net/
  • 2.
  • 3. Introducción KToolBar es una herramienta muy útil provista por el JWTK ya que permite abstraer al desarrollador de varias de las actividades necesarias para la generación de los midlets . Como ejercicio académico es interesante poder realizar estas actividades una a una y desde la línea de comandos para poder observar con precisión su papel e importancia dentro del proceso de desarrollo de las aplicaciones móviles. A continuación se realizarán las actividades necesarias para compilar, preverificar, empaquetar y ejecutar al midlet HolaMundo de manera similar a lo realizado durante la sesión anterior, sin embargo ahora utilizando únicamente los comandos básicos provistos por la plataforma Java. Para la elaboración de este documento se utilizará Windows Vista , motivo por el cual ciertas ubicaciones o comandos relacionados con el shell podrán variar de acuerdo con el sistema operativo utilizado.
  • 4.
  • 5. Estructura de los directorios Por facilidad se va a utilizar la estructura de directorios creada durante la generación del midlet en la sesión anterior, sin embargo no es necesario seguirla con rigurosidad. Los directorios existentes son los siguientes. in - Archivos binarios resultantes. ib - Librerías de terceros. es - Archivos de recursos. rc - Código fuente. Recuerde que la ruta específica del proyecto se modifica de acuerdo a varias condiciones. c:sersUSUARIO 2mewtkVERSIÓN ppsHolaMundo
  • 6. Limpieza de los directorios Como primer paso vamos a remover cualquier archivo binario producto de la generación del midlet con el KtoolBar . Abra una ventana de Símbolo del Sistema o shell y ejecute los siguientes comandos. cd c:sersimezam2mewtk2.5.2 ppsHolaMundo Recuerde adaptar la ruta según corresponda. del bin del classes del tmpclasses
  • 7. Variables de ambiente El segundo paso es la actualización de las variables de ambiente para incluír al JWTK. set J2ME_HOME=C:TK2.5.2 PATH=%PATH%;%J2ME_HOME%in set CLASSPATH=%CLASSPATH%;%J2ME_HOME%ib;.
  • 8. Compilación El tercer paso es la compilación del código fuente. javac -bootclasspath %J2ME_HOME% ibldcapi11.jar; %J2ME_HOME% ibidpapi20.jar -d tmpclasses -classpath tmpclasses;classes -g:none -source 1.4 -target 1.4 srcolaMundoMidlet.java Tenga en cuenta que el comando anterior se debe escribir en una única línea y sólo hay un espacio antes del nombre del archivo donde se encuentra el código fuente del midlet .
  • 9. Compilación La compilación toma los archivos de código fuente ( src/HolaMundoMidlet.java ) y los convierte en su correspondiente versión de bytecodes binarios ( tmpclasses/HolaMundoMidlet.class ) Nótese como se especifica utilizar las clases pertenecientes a la plataforma J2ME: CLDC y MIDP, antes de las existentes en la J2SE.
  • 10. Preverificación El cuarto paso es la preverificación de las clases recién compiladas. Recuérdese que esta verificación inicial se realiza en el entorno de desarrollo. preverify -classpath %J2ME_HOME% ibldcapi11.jar; %J2ME_HOME% ibidpapi20.jar; tmpclasses -d classes HolaMundoMidlet Nótese como la fase de compilación deja la clase compilada en el directorio tmpclasses y la fase de preverificación deja la clase compilada y preverificada en el directorio classes .
  • 11.
  • 12. Creación del archivo de manifiesto El archivo de manifiesto especifica el contenido del archivo JAR. MIDlet-1: HolaMundo, , HolaMundoMidlet MIDlet-Name: HolaMundo MIDlet-Version: 1.0.0 MIDlet-Vendor: Jorge I. Meza MicroEdition-Configuration: CLDC-1.1 MicroEdition-Profile: MIDP-2.0 (salto de línea)
  • 13. Creación del archivo de manifiesto El manifiesto deberá guardarse en el directorio in con el nombre de archivo Manifest.mf . Después de la última línea: atributo MicroEdition-Profile para este caso, deberá haber un salto de línea, de lo contrario no será tenido en cuenta. Para más información acerca del archivo de manifiesto consultar el documento Understanding the Manifiest .
  • 14. Creación del archivo JAR El archivo JAR empaqueta las clases y recursos del midlet en una única ubicación con formato ZIP. Su descripción es realizada por el documento de manifiesto recién creado. jar cvfm binolaMundo.jar binanifest.mf -C classes . El comando anterior solicita la creación del archivo JAR ( HolaMundo.jar ) a ubicarse en el directorio bin , con el contenido del directorio classes y el documento de manifiesto binanifest.mf .
  • 15. Creación del archivo JAD El contenido del archivo JAD ya fue tratado en una sesión anterior, por este motivo sólo se hará referencia al específico para el caso práctico. MIDlet-1: HolaMundo, , HolaMundoMidlet MIDlet-Name: HolaMundo MIDlet-Version: 1.0.0 MIDlet-Vendor: Jorge I. Meza MIDlet-Jar-URL: HolaMundo.jar MIDlet-Jar-Size: 1216 MicroEdition-Configuration: CLDC-1.1 MicroEdition-Profile: MIDP-2.0 (salto de línea)
  • 16. Creación del archivo JAD El valor del atributo MIDlet-Jar-Size deberá coincidir con el tamaño exacto del archivo JAR ubicado ya en el directorio in . El documento descriptor deberá almacenarse bajo la carpeta in con el mismo nombre del archivo JAR y con la extensión JAD: HolaMundo.jad . Para mas información acerca de los atributos disponibles para el archivo JAD consulte el documento Retrieving MIDlet Attributes .
  • 17. Ejecución (emulación) El sexto paso consiste en la prueba final del midlet empaquetado y listo para ser distribuído. Esta ejecución se realiza utilizando el emulador de dispositivos móviles incluído por el JWTK. %J2ME_HOME% inemulator.exe -Xdescriptor binolaMundo.jad
  • 18. Enlaces de interés Understanding the Process of MIDlet Creation--Without the Toolkit http://today.java.net/pub/a/today/2005/02/09/j2me1.html?page=2 Packaging Programs in JAR Files http://java.sun.com/docs/books/tutorial/deployment/jar/ Understanding the Manifest http://java.sun.com/developer/Books/javaprogramming/JAR/basics/manifest.html Emuladores MIDP http://developers.sun.com/mobility/midp/articles/emulators/ Sun Java Wireless Toolkit for CLDC User's Guide (versión 2.5.2) http://java.sun.com/products/sjwtoolkit/wtk2.5.2/docs/UserGuide-html/index.html
  • 19. Fin de la presentación. Creative Commons (CC)