Malditos JAR y Manifest :_(
Buenas, llevo toda la ma帽ana buscando por internet y no encuentro nada. El problema:
Creo una aplicaci贸n que usa Record Stores usando el Java SUN Studio, compilo, ejecuto con Wireless Toolkit 2.0 como emulador y funciona. 隆Pero a la hora de crear el JAR no hay manera!
Si intento ejecutar cualquier JAR haciendo doble click: "Failed to load Main-Class manifest attribute", aunque el programa sea un triste HolaMundo que funciona con KToolBar
Ahora, cojo mi programa, Build, Package, todo bien. Le doy a ejecutar:
Unable to create MIDlet Preventa
java.lang.ClassNotFoundException: Preventa
at com.sun.midp.midlet.MIDletState.createMIDlet(+14)
at com.sun.midp.midlet.Selector.run(+22)
Preventa es el 煤nico archivo .java y por supuesto el 煤nico .class
驴Alguien tiene idea de qu茅 hago mal? T_T
Creo una aplicaci贸n que usa Record Stores usando el Java SUN Studio, compilo, ejecuto con Wireless Toolkit 2.0 como emulador y funciona. 隆Pero a la hora de crear el JAR no hay manera!
Si intento ejecutar cualquier JAR haciendo doble click: "Failed to load Main-Class manifest attribute", aunque el programa sea un triste HolaMundo que funciona con KToolBar
Ahora, cojo mi programa, Build, Package, todo bien. Le doy a ejecutar:
Unable to create MIDlet Preventa
java.lang.ClassNotFoundException: Preventa
at com.sun.midp.midlet.MIDletState.createMIDlet(+14)
at com.sun.midp.midlet.Selector.run(+22)
Preventa es el 煤nico archivo .java y por supuesto el 煤nico .class
驴Alguien tiene idea de qu茅 hago mal? T_T
Vale, se ejecutan dando doble click al archivo .jad. Pero mi programa sigue sin ir. 驴Puede tener relaci贸n con los Record Stores, que probablmente no est谩n dentro del .jar?
Pon aqui tu manifiesto y tu clase que deriva de Midlet para echarle un vistazo, porque puede que no hayas puesto bien el nombre de tu clase principal en Midlet Class Name.
Si ejecutas un JAR se va a ejecutar un programa de escritorio, no un midlet, y va a ir a buscar el nombre de la clase principal a la etiqueta Main-Class. Aunque no se para que quieres ejecutar un midlet en un PC asi, te vale lo mismo probandolo desde un emulador.
Si ejecutas un JAR se va a ejecutar un programa de escritorio, no un midlet, y va a ir a buscar el nombre de la clase principal a la etiqueta Main-Class. Aunque no se para que quieres ejecutar un midlet en un PC asi, te vale lo mismo probandolo desde un emulador.
package Preventa;
import java.io.*;
import javax.microedition.midlet.*;
import javax.microedition.rms.*;
import javax.microedition.lcdui.*;
public class Preventa extends MIDlet implements CommandListener{
declaraci贸n de variables
public Preventa(){
iniciaci贸n de variables, construcci贸n de objetos List, Form..
Es la 煤nica clase que hay, el resto son m茅todos.
MANIFEST:
MIDlet-1: Preventa, Preventa.png, Preventa
MIDlet-Name: Preventa
MIDlet-Vendor: Sun Microsystems
MIDlet-Version: 1.0
MicroEdition-Configuration: CLDC-1.0
MicroEdition-Profile: MIDP-2.0
JAD:
MIDlet-1: Preventa, Preventa.png, Preventa
MIDlet-Jar-Size: 3592 <-- me parece que es demasiado peque帽o para incluir los RS
MIDlet-Jar-URL: Preventa.jar
MIDlet-Name: Preventa
MIDlet-Vendor: Sun Microsystems
MIDlet-Version: 1.0
MicroEdition-Configuration: CLDC-1.0
MicroEdition-Profile: MIDP-2.0
import java.io.*;
import javax.microedition.midlet.*;
import javax.microedition.rms.*;
import javax.microedition.lcdui.*;
public class Preventa extends MIDlet implements CommandListener{
declaraci贸n de variables
public Preventa(){
iniciaci贸n de variables, construcci贸n de objetos List, Form..
Es la 煤nica clase que hay, el resto son m茅todos.
MANIFEST:
MIDlet-1: Preventa, Preventa.png, Preventa
MIDlet-Name: Preventa
MIDlet-Vendor: Sun Microsystems
MIDlet-Version: 1.0
MicroEdition-Configuration: CLDC-1.0
MicroEdition-Profile: MIDP-2.0
JAD:
MIDlet-1: Preventa, Preventa.png, Preventa
MIDlet-Jar-Size: 3592 <-- me parece que es demasiado peque帽o para incluir los RS
MIDlet-Jar-URL: Preventa.jar
MIDlet-Name: Preventa
MIDlet-Vendor: Sun Microsystems
MIDlet-Version: 1.0
MicroEdition-Configuration: CLDC-1.0
MicroEdition-Profile: MIDP-2.0
