elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Trabajando con las ramas de git (tercera parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  Java
| | | |-+  [GCJ] No carga bien y se cuelga
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: [GCJ] No carga bien y se cuelga  (Leído 3,800 veces)
MauroMasciar


Desconectado Desconectado

Mensajes: 567



Ver Perfil
[GCJ] No carga bien y se cuelga
« en: 12 Octubre 2011, 00:23 am »

Siguiendo Google y el comentario que hizo Leyer hace ya un tiempo...

[ Linux ]

Install:
Código:
sudo apt-get install gcj

Generas el .o
Código:
gcj -c -g -O file.java


Compilas
Código:
gcj --main=file -o file file.o


Compila todo bien, pero cuando lo ejecuto con:
./nombrefichero

Me queda así (Después de hacer un clic después de pasar un buen tiempo sin cargar...)



La primera vez que lo ejecute, cargo bien, hasta que hice clic...

El programa es asi: (Compilado con javac)



Que podre hacer para solucionarlo?
No se mucho de este tema (GCJ), si necesitan algo mas de información, solo pídanlo...
Y de pasada, llegue a esto, para que no se pueda descubrir el código, como lo es tan fácil con los .class

Gracias por adelantado...



En línea

Tutto ha oceani da attraversare mentre hanno il coraggio di farlo Avventato? Ma sanno sogni di limiti

Twitter: @MauroMasciar
Debci
Wiki

Desconectado Desconectado

Mensajes: 2.021


Actualizate o muere!


Ver Perfil WWW
Re: [GCJ] No carga bien y se cuelga
« Respuesta #1 en: 12 Octubre 2011, 10:47 am »

Mas que por parte de GCJ, puesto que dices que compila sin errores, debe haber algún problema con el código de la interfaz, como dices tu mismo, probablemente la rutina asignada al actionPerformed del botón debe tener algo que provoca el desborde del programa y su correspondiente crash.

Si nos pasas el código te podremos orientar, pero pondría la mano en el fuego a que no es el compilador puesto que no muestra error alguno.

Un saludo


En línea

MauroMasciar


Desconectado Desconectado

Mensajes: 567



Ver Perfil
Re: [GCJ] No carga bien y se cuelga
« Respuesta #2 en: 12 Octubre 2011, 17:59 pm »

Hola @Debci...
Gracias por responder...

Aclaro, el clic es en cualquier parte de la ventana, no solo en el boton, aparte de que ni siquiera carga los componentes, como se ve...
El código es este:

Código
  1. import javax.swing.JFrame;
  2. import javax.swing.JTextField;
  3. import javax.swing.JButton;
  4. import java.awt.FlowLayout;
  5. import java.awt.event.ActionEvent;
  6. import java.awt.event.ActionListener;
  7. import java.sql.SQLException;
  8. import java.sql.Connection;
  9. import java.sql.Statement;
  10. import java.sql.DriverManager;
  11.  
  12. class insertarDatos extends JFrame implements ActionListener {
  13.  
  14.    JTextField txtDato = new JTextField(20);
  15.    JButton btnInsertar = new JButton("Insertar");
  16.  
  17.    public insertarDatos() {
  18.        super("Insertar datos desde JTextField a MySQL");
  19.        setSize(360, 110);
  20.        getContentPane().setLayout(new FlowLayout());
  21.        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  22.  
  23.        add(txtDato);
  24.        add(btnInsertar);
  25.  
  26.        btnInsertar.addActionListener(this);
  27.  
  28.        setVisible(true);
  29.    }
  30.  
  31.    public void actionPerformed(ActionEvent evt) {
  32.        if (btnInsertar == evt.getSource()) {
  33.            final String drv = "com.mysql.jdbc.Driver";
  34.            final String db = "jdbc:mysql://localhost:3328";
  35.            final String user = "Mauro";
  36.            final String pass = "masciarcomputacion";
  37.            Connection ct;
  38.            Statement st;
  39.            try {
  40.                Class.forName(drv);
  41.                ct = DriverManager.getConnection(db, user, pass);
  42.                st = ct.createStatement();
  43.  
  44.                String insertar = "INSERT INTO Cuentas (Nombre) VALUES ('" + txtDato.getText() + "')";
  45.  
  46.                st.executeUpdate(insertar);
  47.  
  48.                ct.close();
  49.                st.close();
  50.            } catch (SQLException ex) {
  51.                System.out.println(ex.getMessage());
  52.            } catch (ClassNotFoundException ex) {
  53.                System.out.println(ex.getMessage());
  54.            } catch (Exception ex) {
  55.                System.out.println(ex.getMessage());
  56.            }
  57.        }
  58.    }
  59.  
  60.    public static void main(String[] args) {
  61.        insertarDatos app = new insertarDatos();
  62.    }
  63. }
En línea

Tutto ha oceani da attraversare mentre hanno il coraggio di farlo Avventato? Ma sanno sogni di limiti

Twitter: @MauroMasciar
Debci
Wiki

Desconectado Desconectado

Mensajes: 2.021


Actualizate o muere!


Ver Perfil WWW
Re: [GCJ] No carga bien y se cuelga
« Respuesta #3 en: 15 Octubre 2011, 13:46 pm »

Intenta ejecutando desde la consola, y mira que tipo de error da, es lo mas sensato, podría ser que haga mal la conexión a la BD, aunque en principio por lo que me comentas no tiene nada que ver.
No he mirado el código con atención pero en cuanto llegue a casa le hecho un ojo.

Un saludo
En línea

klaine

Desconectado Desconectado

Mensajes: 112



Ver Perfil WWW
Re: [GCJ] No carga bien y se cuelga
« Respuesta #4 en: 16 Octubre 2011, 06:23 am »

Ni idea que es GCJ  :D , pero veo que lo haces en linux...

Si de algo sirve probé tu code en netbeans en windows y me funko, con la conexion y todo, con suerte un warning incoherente (linea 26, leaking this in constructor), pero nada importante....

Saludos!
En línea

MauroMasciar


Desconectado Desconectado

Mensajes: 567



Ver Perfil
Re: [GCJ] No carga bien y se cuelga
« Respuesta #5 en: 16 Octubre 2011, 19:18 pm »

Ni idea que es GCJ  :D , pero veo que lo haces en linux...

Si de algo sirve probé tu code en netbeans en windows y me funko, con la conexion y todo, con suerte un warning incoherente (linea 26, leaking this in constructor), pero nada importante....

Saludos!

Por supuesto que anda en Netbeans y en Javac, el problema es con GCJ

Intenta ejecutando desde la consola, y mira que tipo de error da, es lo mas sensato, podría ser que haga mal la conexión a la BD, aunque en principio por lo que me comentas no tiene nada que ver.
No he mirado el código con atención pero en cuanto llegue a casa le hecho un ojo.

Un saludo

Hola...
Esta es la salida:

Código:
mauro@Masciar:~/Escritorio/problema gcj$ gcj -c -g -O Main.java
Main.java:12: warning: The serializable class Main does not declare a static final serialVersionUID field of type long
class Main extends JFrame implements ActionListener {
     ^^^^
Main.java:61: warning: The local variable app is never read
Main app = new Main();
    ^^^
2 problems (2 warnings)
mauro@Masciar:~/Escritorio/problema gcj$ gcj --main=Main -o mn Main.o
mauro@Masciar:~/Escritorio/problema gcj$ ./mn
^C
mauro@Masciar:~/Escritorio/problema gcj$

Algo mal con la db? Pero se ejecuta el codigo de la bd sin presionar el boton?

Ni siquiera me anda un simple holamundo

Código
  1. import javax.swing.*;
  2. import java.awt.*;
  3.  
  4. class holamundo extends JFrame {
  5. JLabel lbl = new JLabel("Hola mundo");
  6. public holamundo() {
  7. super("Hola mundo");
  8. getContentPane().setLayout(new FlowLayout());
  9. setSize(800, 600);
  10. setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  11.  
  12. add(lbl);
  13.  
  14. setVisible(true);
  15. }
  16.  
  17. public static void main(String[] args) {
  18. holamundo app = new holamundo();
  19. }
  20. }

Código:
mauro@Masciar:~/Escritorio/problema gcj$ gcj -c -g -O holamundo.java
holamundo.java:4: warning: The serializable class holamundo does not declare a static final serialVersionUID field of type long
class holamundo extends JFrame {
     ^^^^^^^^^
holamundo.java:16: warning: The local variable app is never read
holamundo app = new holamundo();
         ^^^
2 problems (2 warnings)
mauro@Masciar:~/Escritorio/problema gcj$ gcj --main=holamundo -o holados holamundo.o
mauro@Masciar:~/Escritorio/problema gcj$ ./holados
Terminado (killed)

Pasa lo mismo...

Y mira esto:

Código:
mauro@Masciar:~/Escritorio/problema gcj$ javac holamundo.java
mauro@Masciar:~/Escritorio/problema gcj$ java holamundo
16/10/2011 14:11:03 com.sun.corba.se.impl.ior.IORImpl getProfile
ADVERTENCIA: "IOP00511201: (INV_OBJREF) IOR must have at least one IIOP profile"
org.omg.CORBA.INV_OBJREF:   vmcid: SUN  minor code: 1201  completed: No
at com.sun.corba.se.impl.logging.IORSystemException.iorMustHaveIiopProfile(IORSystemException.java:473)
at com.sun.corba.se.impl.logging.IORSystemException.iorMustHaveIiopProfile(IORSystemException.java:495)
at com.sun.corba.se.impl.ior.IORImpl.getProfile(IORImpl.java:334)
at com.sun.corba.se.impl.encoding.CDRInputStream_1_0.read_Object(CDRInputStream_1_0.java:787)
at com.sun.corba.se.impl.encoding.CDRInputStream_1_0.read_Object(CDRInputStream_1_0.java:761)
at com.sun.corba.se.impl.encoding.CDRInputStream.read_Object(CDRInputStream.java:231)
at com.sun.corba.se.impl.resolver.INSURLOperationImpl.getIORFromString(INSURLOperationImpl.java:120)
at com.sun.corba.se.impl.resolver.INSURLOperationImpl.operate(INSURLOperationImpl.java:130)
at com.sun.corba.se.impl.orb.ORBImpl.string_to_object(ORBImpl.java:836)
at org.GNOME.Accessibility.AccessUtil.getRegistryObject(AccessUtil.java:143)
at org.GNOME.Accessibility.JavaBridge.registerApplication(JavaBridge.java:1147)
at org.GNOME.Accessibility.JavaBridge.<init>(JavaBridge.java:398)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:532)
at java.lang.Class.newInstance0(Class.java:372)
at java.lang.Class.newInstance(Class.java:325)
at java.awt.Toolkit.loadAssistiveTechnologies(Toolkit.java:786)
at java.awt.Toolkit.getDefaultToolkit(Toolkit.java:875)
at java.awt.Window.getToolkit(Window.java:1170)
at java.awt.Window.init(Window.java:400)
at java.awt.Window.<init>(Window.java:438)
at java.awt.Frame.<init>(Frame.java:419)
at javax.swing.JFrame.<init>(JFrame.java:218)
at holamundo.<init>(holamundo.java:7)
at holamundo.main(holamundo.java:18)

Tendra algo que ver eso? Hace rato me salta eso, pero el programa fuciona correctamente...

Saludos...

--

Edit: Solucione este error:
Código:
holamundo.java:4: warning: The serializable class holamundo does not declare a static final serialVersionUID field of type long

Aplicando esto en el código:

Código
  1. private static final long serialVersionUID = 1L;

Pero sigue andando mal...
« Última modificación: 16 Octubre 2011, 19:30 pm por MauroMasciar » En línea

Tutto ha oceani da attraversare mentre hanno il coraggio di farlo Avventato? Ma sanno sogni di limiti

Twitter: @MauroMasciar
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines