2011-01-20 15 views
5

Estoy tratando de agarrar los argumentos pasados ​​desde la línea de comandos cuando ejecuto mi aplicación. Tengo un proyecto hecho a través de netbeans que usa la clase SingleFrameApplication o el marco de aplicación swing. El método principal hace una llamada¿Cómo se procesan los argumentos de la línea de comandos en Java Swing Application Framework

launch(MyApp.class, args); 

en su método principal. La documentación encontrada en http://java.sun.com/developer/technicalArticles/javase/swingappfr/ dice que:

El método de lanzamiento llama al método de inicialización opcional de la aplicación justo antes de llamar al método de inicio. Puede usar el método de inicialización para realizar cualquier configuración inicial o pasos de configuración. Por ejemplo, puede procesar argumentos de línea de comandos desde el método de inicialización. También puede verificar una conexión de base de datos o establecer propiedades del sistema. En resumen, el marco proporciona este método para cualquier configuración no relacionada con UI que su aplicación pueda necesitar antes de mostrar la UI. Las clases Application y SingleFrameApplication proporcionan un cuerpo de método vacío para el método de inicialización. El método no hace nada por defecto.

¿Estamos hablando del método MyApp.initialize aquí? Si es así, no parece haber ninguna referencia al parámetro args.

EDITAR: Esto no es un applet, es una aplicación de escritorio. Recuerde, está utilizando el Swing Application Framework, lo que significa que, parte de esto es tener una clase "launcher" para su GUI principal de clase Java. Un fragmento de código sería:

public class MyApp extends SingleFrameApplication { 

@Override protected void startup() { 
    MyAppGUI view = new MyAppGUI(this); 

    show(new MyAppGUI(this)); 
} 

public static void main(String[] args) { 
    launch(MyAppGUI.class, args); 
} 
+0

Faltan algunos detalles. ¿Es esto un Applet? ¿Cómo lo estás lanzando ahora? – jzd

Respuesta

2

Sí, usted tiene que reemplazar el método initialize(...). En el enlace que proporcionó, existe Code Example 6, que muestra el uso del método initialize(...). Claramente tiene los argumentos de línea de comando allí.

public class HelloWorld extends SingleFrameApplication { 
    ... 

    @Override 
    protected void initialize(String[] args) { 
     ... 
    } 
} 
+0

Perdón, perdiendo el tiempo de todos ... Me perdí de alguna manera ... :( – EDJ

1

Tomado de los documentos oficiales de Sun. Agregue esto a su clase de aplicación.

@Override 
protected void initialize(String[] args) { 
    ... 
} 
Cuestiones relacionadas