Foros del Web » Programación para mayores de 30 ;) » Java »

problemas al ejecutar un .class

Estas en el tema de problemas al ejecutar un .class en el foro de Java en Foros del Web. hola tios, estoy haciendo una aplicación en java con eclipse, y me funciona perfectamente, pero si intento ejecutar mi aplicacion con el comando "java" desde ...
  #1 (permalink)  
Antiguo 31/05/2005, 04:15
Avatar de sith  
Fecha de Ingreso: julio-2003
Ubicación: Sevilla
Mensajes: 333
Antigüedad: 20 años, 9 meses
Puntos: 0
problemas al ejecutar un .class

hola tios, estoy haciendo una aplicación en java con eclipse, y me funciona perfectamente, pero si intento ejecutar mi aplicacion con el comando "java" desde el command me da el siguiente error:

java principal

Exception in thread "main" java.lang.NoClassDefFoundError: principal (wrong name
: miPaquete/principal)
at java.lang.ClassLoader.defineClass0(Native Method)
at java.lang.ClassLoader.defineClass(Unknown Source)
at java.security.SecureClassLoader.defineClass(Unknow n Source)
at java.net.URLClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.access$100(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClassInternal(Unknown Source)


mi aplicacion esta compuesta por dos .class, y como ya digo desde eclipse funciona bien
  #2 (permalink)  
Antiguo 31/05/2005, 06:15
 
Fecha de Ingreso: mayo-2005
Mensajes: 423
Antigüedad: 19 años
Puntos: 1
estas ejecutando desde fuera dl pakete esto es

java miPaquete.principal o

c:\miPaquete> java principal???

si haces lo segundo te petara siempre y ademas tendras q asignar el classpath si lo tiens como variable del sistema con hacer esto
set classpath=.;

saludos
__________________
Dios creo un equipo perfecto a los demas los lleno de extranjeros
  #3 (permalink)  
Antiguo 31/05/2005, 10:10
Avatar de sith  
Fecha de Ingreso: julio-2003
Ubicación: Sevilla
Mensajes: 333
Antigüedad: 20 años, 9 meses
Puntos: 0
Hola tio, he probado lo de java miPaquete.principal y no me sale ningun error, pero ahora no aparece nada, no sale el programa, pero si q la maquina virtual de java se ve q este trabajando, xq para poder seguir con el command tengo que darle a "ctrl - c", no sabes xq puede ser esto ahora?
  #4 (permalink)  
Antiguo 31/05/2005, 13:58
 
Fecha de Ingreso: mayo-2005
Mensajes: 423
Antigüedad: 19 años
Puntos: 1
ponel codigo y haz una cosa
cuadno compiles

haz javac mipaquete/*.java -deprecation y me pones los mensajes q aparecen

saludos
__________________
Dios creo un equipo perfecto a los demas los lleno de extranjeros
  #5 (permalink)  
Antiguo 01/06/2005, 03:37
Avatar de sith  
Fecha de Ingreso: julio-2003
Ubicación: Sevilla
Mensajes: 333
Antigüedad: 20 años, 9 meses
Puntos: 0
hola tio, aki tienes el código del archivo principal.java:

Código PHP:
package miPaquete;

import javax.swing.*;
import java.awt.*;
import java.awt.event.*;


public class 
principal extends JFrame{
//    Atributos
    
protected JTabbedPane pestana;
    protected 
JMenuBar menubar;
    protected 
Lenguaje idioma;
    protected 
JMenu menu1;
    protected 
JMenuItem itemSalir;
    protected 
JMenuItem itemImportar;
    protected 
JMenuItem itemUsuarios;
    protected 
JMenu menuPreferencias;
    protected 
JMenu menuLenguaje;
    protected 
JRadioButtonMenuItem itemLenguajeSP;
    protected 
JRadioButtonMenuItem itemLenguajeEN;
    protected 
JMenu menu2;
    
    
//Metodos
    
protected void setIdioma(int idioma){
        
this.idioma.setLenguaje(idioma);
        
menu1.setText(this.idioma.archivo);
        
itemSalir.setText(this.idioma.salir);
        
itemImportar.setText(this.idioma.importar);
        
itemUsuarios.setText(this.idioma.usuarios);
        
menuPreferencias.setText(this.idioma.preferencias);
        
menuLenguaje.setText(this.idioma.lenguaje);
        
itemLenguajeSP.setText(this.idioma.sp);
        
itemLenguajeEN.setText(this.idioma.en);
        
        
menu2.setText(this.idioma.ayuda);
    
        
pestana.setTitleAt(0this.idioma.inicio);
        
pestana.setTitleAt(1this.idioma.general);
        
pestana.setTitleAt(2this.idioma.estadistica);
        
        switch (
idioma){
        case 
0:
            
itemLenguajeSP.setSelected(true);
            
itemLenguajeEN.setSelected(false);
        break;
        case 
1:
            
itemLenguajeSP.setSelected(false);
            
itemLenguajeEN.setSelected(true);
        }
    }
    protected 
void setPestana(){
        
pestana.addTab(idioma.inicionullnull"Does nothing");
        
pestana.addTab(idioma.generalnullnull"Does nothing");
        
pestana.addTab(idioma.estadisticanullnull"Does nothing");
    }
    protected 
void setBarraMenu(){
        
//Items del menu Archivo
        
menu1 = new JMenu();
        
itemSalir = new JMenuItem();
        
itemSalir.setMnemonic(KeyEvent.VK_S);
        
itemSalir.addActionListener(new ActionListener(){
             public 
void actionPerformed(ActionEvent e){
                 
System.exit(0);
            }
        });
        
itemImportar = new JMenuItem();
        
itemUsuarios = new JMenuItem();
            
//Items del menuPreferencia
            
menuPreferencias = new JMenu();
            
menuLenguaje = new JMenu();
            
itemLenguajeSP = new JRadioButtonMenuItem();
            
itemLenguajeSP.setSelected(true);
            
itemLenguajeSP.addActionListener(new ActionListener(){
                 public 
void actionPerformed(ActionEvent e){
                     
setIdioma(0);
                }
            });
            
itemLenguajeEN = new JRadioButtonMenuItem();
            
itemLenguajeEN.addActionListener(new ActionListener(){
                 public 
void actionPerformed(ActionEvent e){
                     
setIdioma(1);
                }
            });
        
menu1.add(itemImportar);
        
menu1.add(itemUsuarios);
        
menuLenguaje.add(itemLenguajeSP);
        
menuLenguaje.add(itemLenguajeEN);
        
menuPreferencias.add(menuLenguaje);
        
menu1.add(menuPreferencias);
        
menu1.add(itemSalir);
        
        
//Items del menu Pacientes
        
menu2 = new JMenu();
        
        
//Items del menu Ayuda
        
menubar.add(menu1);
        
menubar.add(menu2);
        
setIdioma(0);
    }
    
    public 
principal(){
        
idioma = new Lenguaje();
        
//idioma.setLenguaje(0);
        
menubar = new JMenuBar();
        
pestana = new JTabbedPane(SwingConstants.TOP);
        
setPestana();
        
setBarraMenu();
        
pack();
        
setTitle("Principal");
        
setSize(600500);
        
getContentPane().add(pestana);
        
setJMenuBar(menubar);
    }
    
    public static 
void main(String[] args) {
        
principal v1 = new principal();
    }

y aquí el del archivo Lenguaje.java:

Código PHP:
package miPaquete;

public class 
Lenguaje {
    private 
int leng;
    protected 
String archivo;
    protected 
String salir;
    protected 
String importar;
    protected 
String usuarios;
    protected 
String preferencias;
    protected 
String lenguaje;
    protected 
String sp;
    protected 
String en;
    protected 
String pacientes;
    protected 
String ayuda;
    protected 
String inicio;
    protected 
String general;
    protected 
String estadistica;
    
    public 
void setLenguaje (int leng){
        switch (
leng){
        case 
0:
            
archivo "Archivo";
            
salir "Salir";
            
importar "Importar";
            
usuarios "Usuarios";
            
preferencias "Preferencias";
            
lenguaje "Idioma";
            
sp "Español";
            
en "Ingles";
            
pacientes "Pacientes";
            
ayuda "Ayuda";
            
inicio "Inicio";
            
general "General";
            
estadistica "Estadistica";
        break;
        case 
1:
            
archivo "File";
            
salir "Exit";
            
importar "Import";
            
usuarios "Users";
            
preferencias "Preferences";
            
lenguaje "Language";
            
sp "Spanish";
            
en "English";
            
pacientes "Patients?";
            
ayuda "Help";
            
inicio "Start";
            
general "General";
            
estadistica "Stadistic?";
        }
    }

Use el comando javac mipaquete/*.java -deprecation, pero no me ponia ningun mensaje, así que hago tras esto el comando java miPaquete.principal, pero tampoco, sigue como si se ejecutara pero no me aparece el programa
  #6 (permalink)  
Antiguo 01/06/2005, 04:46
 
Fecha de Ingreso: mayo-2005
Mensajes: 423
Antigüedad: 19 años
Puntos: 1
pon en el constructor

this.setVisible(true);

otra cosa cualquier funcion de clase ponlas con el this. delante a mi me parece mas ordenador saludos
__________________
Dios creo un equipo perfecto a los demas los lleno de extranjeros
  #7 (permalink)  
Antiguo 01/06/2005, 14:54
Avatar de sith  
Fecha de Ingreso: julio-2003
Ubicación: Sevilla
Mensajes: 333
Antigüedad: 20 años, 9 meses
Puntos: 0
hola tio, muxas gracias, ya funcion, pero aun le pasa algo raro, cuando lo ejecuto con el comando java arranca el programa y aparece la ventana, pero aparece vacia, sin embargo cuando hago doble click para maximizarla si que aparece todo, sabes xq puede ser? y como solucionarlo?
  #8 (permalink)  
Antiguo 02/06/2005, 00:17
 
Fecha de Ingreso: mayo-2005
Mensajes: 423
Antigüedad: 19 años
Puntos: 1
pos no se :S no se me ocurre pq puede ser si no tiens mucha prisa ve kitando codigo y ve menu por menu haber q pasa ,prueba en vez de setVisible(true) show

salu2 xo no se me ocurre pq es el fallo
__________________
Dios creo un equipo perfecto a los demas los lleno de extranjeros
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 08:20.