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)


  Mostrar Mensajes
Páginas: 1 2 [3] 4 5
21  Programación / Java / Duda Apache Commons CLI en: 7 Noviembre 2013, 23:07 pm
Hola compañeros, tengo una duda que no sé como resolverla:

Código:
usage: Vista.CalculadoraCLIVista
 -resta                  Calcula la resta dos operandos
 -suma             Calcula la suma dos operandosl


¿ Cómo puedo "decirle" que el args[0] equivale a resta,suma..etc?

Lo estoy haciendo con el patron MVC y el código de la vista lo tengo así , pero no estoy muy convencido que este bien..

Código:
public void realizarOperacion(String[] args,double x, double y) {
       
        // para poder pasarle el options al parser
        Options options = mostrarOpciones();

        CommandLineParser parser = new BasicParser();
        CommandLine cmd = null;
        try {
            cmd = parser.parse(options, args);
        } catch (ParseException ex) {
            Logger.getLogger(CalculadoraCLIVista.class.getName()).log(Level.SEVERE, null, ex);
        }

        if (cmd == null) {
            System.err.println("No se cargo bien el parseador de la linea de comandos");

            System.exit(-1);
        }

        if (cmd.hasOption("h") || cmd.getOptions().length == 0) {
            new HelpFormatter().printHelp(CalculadoraCLIVista.class.getCanonicalName(), options);
            return;
        }

        if (cmd.hasOption("suma")) {
            // leer los dos argumentos , convertirlos a double y realizar operacion.
           
        // "x" seria el primer operando que se le pasa," y" el segundo.
            x = Double.parseDouble(args[1]);
            y = Double.parseDouble(args[2]);
            controlador.sumar(x, y);
        }
}

  .. de tal manera que yo ponga  sumar 1 2 y la línea de comandos me devuelva 3.. :S
22  Programación / Java / Re: AYUDA! Como importar la libreria Apache Commons cli en el classpath en: 5 Noviembre 2013, 19:19 pm
Por fin!! Muchas gracias amigo! Me has "salvado" un poco la vida, llevaba dias tras esto sin poder sacarle punta  ;-)
23  Programación / Java / Re: AYUDA! Como importar la libreria Apache Commons cli en el classpath en: 5 Noviembre 2013, 19:06 pm
¿ Puede ser por mis variables Path y classpath?

he creado uno con un main de imprima hola y ese si me deja , pero...


Código:
C:\Users\Juanma\Desktop>java holita
hola

C:\Users\Juanma\Desktop>java CalculadoraCLI -cp jar/commons-cli-1.2.jar
Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/cl
i/ParseException
        at java.lang.Class.getDeclaredMethods0(Native Method)
        at java.lang.Class.privateGetDeclaredMethods(Unknown Source)
        at java.lang.Class.getMethod0(Unknown Source)
        at java.lang.Class.getMethod(Unknown Source)
        at sun.launcher.LauncherHelper.getMainMethod(Unknown Source)
        at sun.launcher.LauncherHelper.checkAndLoadMain(Unknown Source)
Caused by: java.lang.ClassNotFoundException: org.apache.commons.cli.ParseExcepti
on
        at java.net.URLClassLoader$1.run(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)
        ... 6 more

C:\Users\Juanma\Desktop>
24  Programación / Java / Re: AYUDA! Como importar la libreria Apache Commons cli en el classpath en: 5 Noviembre 2013, 18:53 pm
Código:
C:\Users\Juanma\Desktop>java CalculadoraCLI
Error: no se ha encontrado o cargado la clase principal CalculadoraCLI


Él codigo es un ejemplo que vi en internet para ver si podia ejecutarlo en la linea de comandos

Código:
import org.apache.commons.cli.*; 
 
import java.io.OutputStream; 
 
/**
 * Ejemplos del uso de la librería "Apache Commons CLI" 
 * @author Carlos García. Autentia.
 */ 
public class CalculadoraCLI { 
 
    /**
     * -ip address [-port puerto]  [err|console] [-help | -h]
     */ 
    public static void main(String[] args) { 
        final int DEF_PORT = 60001;     // Puerto por defecto 
         
        int               port    = 0; 
        String            ip      = null;     
        OutputStream      output  = null; 
        CommandLineParser parser  = null; 
        CommandLine       cmdLine = null;         
 
      /////////////////////////////////////////////////////////////////////// 
      // Fase 1: Configuramos las opciones de validación de entrada. 
      /////////////////////////////////////////////////////////////////////// 
             
        Options options = new Options(); 
        options.addOption("ip",     true,  "IP de destino"); 
        options.addOption("port",   true,  "Puerto destino"); 
        options.addOption("h",      "help", false, "Imprime el mensaje de ayuda");   
         
        // No pueden aparecen las dos opciones simultáneamente. 
        OptionGroup group =  new OptionGroup(); 
        group.addOption(new Option("err",     "Salida estándar de errores")); 
        group.addOption(new Option("console", "Salida estándar")); 
        options.addOptionGroup(group); 
         
         
        try { 
             
          /////////////////////////////////////////////////////////////////////// 
          // Fase 2: Parseamos la entrada con la configuración establecida 
          /////////////////////////////////////////////////////////////////////// 
       
            parser  = new BasicParser(); 
            cmdLine = parser.parse(options, args); 
             
          /////////////////////////////////////////////////////////////////////// 
          // Fase 3: Analizamos los resultados y realizamos las tareas pertinentes 
          /////////////////////////////////////////////////////////////////////// 
             
            // Si está la opcion de ayuda, la imprimimos y salimos. 
            if (cmdLine.hasOption("h")){    // No hace falta preguntar por el parámetro "help". Ambos son sinónimos 
                new HelpFormatter().printHelp(CalculadoraCLI.class.getCanonicalName(), options ); 
                return; 
            } 
             
            // Si el usuario ha especificado el puerto lo leemos         
            if (cmdLine.hasOption("port")){ 
                port = Integer.parseInt( cmdLine.getOptionValue("port") );   
            } else { 
                port = DEF_PORT; 
            } 
             
            // Leemos la dirección IP. Sino existe generamos un error pues es un parámetro requerido. 
            ip =  cmdLine.getOptionValue("ip"); 
            if (ip == null){ 
                throw new org.apache.commons.cli.ParseException("La direccion IP es requerida"); 
            } 
             
            if (cmdLine.hasOption("console")){ 
                output = System.out; 
            } else if (cmdLine.hasOption("err")){ 
                output = System.err; 
            } else { 
                output = null; 
            } 
             
             // .............................................................. 
             // Aquí irían las tareas que tuviera que realizar la aplicación   
             // .............................................................. 
             
            System.out.println("OK"); 
             
        } catch (org.apache.commons.cli.ParseException ex){ 
            System.out.println(ex.getMessage()); 
             
            new HelpFormatter().printHelp(CalculadoraCLI.class.getCanonicalName(), options );    // Error, imprimimos la ayuda 
        } catch (java.lang.NumberFormatException ex){ 
            new HelpFormatter().printHelp(CalculadoraCLI.class.getCanonicalName(), options );    // Error, imprimimos la ayuda 
        } 
    } 
25  Programación / Java / Re: AYUDA! Como importar la libreria Apache Commons cli en el classpath en: 5 Noviembre 2013, 18:41 pm
El codigo que uso es el siguiente..

Código:
javac CalculadoraCLI.java -cp jar/commons-cli-1.2.jar

2) Me genera el .class correctamente

3) ahora...
Código:
javac CalculadoraCLI.java -cp jar/commons-cli-1.2.jar

4) No se encuentra la clase CalculadoraCLI.java

5) tiene un metodo main

6) no se que hacer ya..
26  Programación / Java / Re: AYUDA! Como importar la libreria Apache Commons cli en el classpath en: 5 Noviembre 2013, 16:57 pm
Ok, me compila bien, pero a la hora de usar
Código:
java TuClaseConCli -cp commons-cli-1.2/commons-cli-1.2.jar
[/b] ME DICE QUE NO ENCUENTRA LA CLASE PRINCIPAL...  QUE ASCO JEJEJEJ
27  Programación / Java / Re: Como importar la libreria Apache Commons cli en el classpath en: 5 Noviembre 2013, 13:20 pm
No lo he solucionado.. lo que quiero es añadir commons cli al classpath para que me pueda complicar mi clase utilidadcli.java

AYUDA!
28  Programación / Java / AYUDA! Como importar la libreria Apache Commons cli en el classpath en: 5 Noviembre 2013, 01:34 am
wenas gente! no consigo importarla.. la cuestión es que quiero en la linea de comandos ejecutar ...

Código:
javac aplicacionCLI

me salta...
Código:
C:\Users\Juanma\Desktop>javac aplicacionCLI.java
aplicacionCLI.java:6: error: package org.apache.commons.cli does not exist
import org.apache.commons.cli.*;
...
8 errors

Alquien me podría explicar QUE TENGO QUE HACER PARA IMPLEMENTAR LA LIBRERIA COMMONS CLI BIEN PARA YO PODER EJECUTAR MIS APLICACIONES DESDE DONDE YO QUIERA????
29  Programación / .NET (C#, VB.NET, ASP) / Porque no ingresa datos en la base datos usando entityframework en: 8 Junio 2013, 01:41 am
1º La base de datos en sql compact

2º no la tengo importada en el proyecto

Código:
   Public Sub add(ByVal juguete As Juguete) Implements IJugueteDAO.add
        ' Creo acceso a db a través de EF
        Dim ef = New juguetes1Entities()

        ' Creo juguete en la base de datos
        Dim jugueteEf = ef.Juguetes.CreateObject()
        ' Le asigno los valores de mi modelo
        jugueteEf.EdadMinima = juguete.EdadMinima
        jugueteEf.Nombre = juguete.Nombre
        jugueteEf.Precio = juguete.Precio
        ' Guardo los cambios en la db
        ef.SaveChanges()
    End Sub


borrar...


Código:
Public Sub remove(ByVal juguete As Juguete) Implements IJugueteDAO.remove
        Dim ef = New juguetes1Entities()

        ' Busco en la db el juguete por el ID
        Dim jugueteEf = From s In ef.Juguetes Where s.Id = juguete.Id

        ' Tras eso, lo borro
        ef.Juguetes.DeleteObject(jugueteEf)
        ' Creo que en el delete save es opcional...
        ef.SaveChanges()
    End Sub


actualizar....


Código:
   Public Function Update(ByVal juguete As Juguete) Implements IJugueteDAO.update
        Try
            Dim ef = New juguetes1Entities
            Dim productoEF = (From s In ef.Juguetes Where s.Id = juguete.Id Select s).First()
            productoEF.Nombre = juguete.Nombre
            productoEF.EdadMinima = juguete.EdadMinima
            productoEF.Precio = juguete.Precio

            ef.SaveChanges()
            Return True
        Catch
            Return False
        End Try
    End Function



en el form....

Código:
Class MainWindow

    Dim juguete As Juguete

    Private Sub Window_Loaded(ByVal sender As System.Object, ByVal e As System.Windows.RoutedEventArgs) Handles MyBase.Loaded


        For Each j In CatalogoJuguetes.Instancia.getAll
            ComboBox1.Items.Add(j)
        Next
    End Sub

  

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.Windows.RoutedEventArgs) Handles Button1.Click

        Dim precio = Double.Parse(TextBox1.Text.ToString)
        Dim nombre = TextBox2.Text.ToString
        Dim edad = TextBox3.Text.ToString
        Dim id = Integer.Parse(TextBox4.Text.ToString)

        juguete = New Juguete(precio, edad, nombre, id)
        CatalogoJuguetes.Instancia.add(juguete)
        ComboBox1.Items.Add(juguete)

    End Sub

    Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.Windows.RoutedEventArgs) Handles Button2.Click
        ComboBox1.Items.Remove(juguete)


            CatalogoJuguetes.Instancia.remove(juguete)

    End Sub


AL AÑADIR ME LO AÑADE AL COMBOBOX Y SUPUESTAMENTE EN LA BASE DE DATOS PERO CUANDO VUELVE A EJECUTARLO, ESTE NO ME APARECE, BORRAR ME SALTA UN InvalidCastException Y LA VERDAD NO SÉ SOLUCIONARLO Y EL TERCERO QUERRIA ACTUALIZARLO .. SI PUEDEN AYUDARME GRACIAS
30  Programación / .NET (C#, VB.NET, ASP) / Re: Crear Timer desde una clase y luego llamarlo en un evento para hacerlo funconar en: 6 Junio 2013, 18:08 pm
Alguien puede ayudarme??????????????????????????????????????????????????
Páginas: 1 2 [3] 4 5
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines