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

No reproduce sonido mi jar

Estas en el tema de No reproduce sonido mi jar en el foro de Java en Foros del Web. hola buenas! y gracias de antemano. He creado un programa en java que se comunica con arduino para saber la temperatura, en netbeans funciona bien ...
  #1 (permalink)  
Antiguo 26/03/2016, 13:51
 
Fecha de Ingreso: febrero-2013
Mensajes: 21
Antigüedad: 8 años, 9 meses
Puntos: 0
No reproduce sonido mi jar

hola buenas! y gracias de antemano.
He creado un programa en java que se comunica con arduino para saber la temperatura, en netbeans funciona bien pero al crear el jar y pasarlo a exe deja de funcionar el audio que indica la temperatura. He utiizado 2 metodos diferentes por si era el problema y el audio esta en carpeta de audio y directamaente donde se crea la clase principal

Código Java:
Ver original
  1. public class conectar extends javax.swing.JFrame implements SerialPortEventListener{
  2.    
  3.     String ruta="audio/";
  4.     private Clip clip;
  5.     String Mensaje = "";
  6.     int DatoEntrada;
  7.     private OutputStream Output = null;
  8.     private InputStream Input = null;
  9.     SerialPort serialPort;
  10.     private final String PORT_NAME = "COM4";
  11.     private static final int TIME_OUT = 2000;
  12.     private static final int DATA_RATE = 9600;
  13.     boolean estado = true;
  14.     /**
  15.      * Creates new form conectar
  16.      */
  17.     public conectar() {
  18.         initComponents();
  19.         ArduinoConnection();
  20.         esperar();
  21.         EnviarDatos("a");
  22.        
  23.       }
  24.    
  25.      public void esperar(){
  26.                  try{
  27.  
  28.     Thread.sleep(3000);
  29.    
  30. }catch(Exception e)
  31. {
  32.    System.out.println("Exception caught");
  33. }
  34.      }
  35.    
  36.     public void EnviarDatos(String data) {
  37.        //esperar();
  38.         try {
  39.             Output.write(data.getBytes());
  40.             System.err.print("oi");
  41.  
  42.         } catch (IOException e) {
  43.  
  44.             System.exit(ERROR);
  45.         }
  46.     }
  47.    
  48.     private int RecibirDatos() throws IOException {
  49.         int Outputs = 0;
  50.         Outputs = Input.read();
  51.         return Outputs;
  52.     }
  53.       public synchronized void serialEvent(SerialPortEvent oEvent) {
  54.        
  55.         while (oEvent.getEventType() == SerialPortEvent.DATA_AVAILABLE) {
  56.            
  57.            
  58.             try {
  59.                 int datos; //Se declaran las variables
  60.                 datos = RecibirDatos(); //Se lee los datos en el puerto serie
  61.                
  62.                 if (datos > 0) { //Si el valor leido es mayor a 0...
  63.                     Mensaje = Mensaje + (char) datos; //Se acumula el mensaje
  64.  
  65.                     if (Mensaje.charAt(Mensaje.length() - 1) == ',') { //Cuando se recibe la coma
  66.                         //el mensaje ha llegado a su final, por lo que se procede a imprimir
  67.                         //La parte ENTERA de la humedad. Se busca el punto, donde quiera que esté
  68.                         //y se transforma de String a entero
  69.                        
  70.                                
  71.                                 String distancia = Mensaje.substring(0, Mensaje.length() - 1);
  72.                                 int distan = Integer.parseInt(distancia);
  73.                                
  74.                               //  Mensaje = ""; //Se limpia la variable y se prepara para nueva lectura
  75.                                 System.err.println(distan);
  76.                      
  77.                      ///  if (distan<21 & distan>18){
  78.                         //       daleplay("i3");
  79.                           //  }
  80.                         switch(distan){
  81.                             case 20:
  82.                               pay("20");
  83.                               esperar();
  84.                                //System.exit(0);
  85.                                 break;
  86.                                
  87.                             case 18:
  88.                               pay("18");
  89.                               esperar();
  90.                                //System.exit(0);
  91.                               as.setText("18");
  92.                                 break;
  93.                                      
  94.                             case 19:
  95.                               pay("19");
  96.                               esperar();
  97.                                //System.exit(0);
  98.                              
  99.                                 break;
  100.                             case 17:
  101.                               pay("17");
  102.                               esperar();
  103.                               as.setText("17");
  104.                                //System.exit(0);
  105.                                 break;
  106.                            
  107.                                      
  108.                      
  109.                                
  110.                              case 21:
  111.                               daleplay("21");
  112.                               esperar();
  113.                                System.exit(0);
  114.                                 break;
  115.                                
  116.                             case 22:
  117.                               daleplay("22");
  118.                               esperar();
  119.                                System.exit(0);
  120.                                 break;
  121.                                      
  122.                             case 23:
  123.                               daleplay("23");
  124.                               esperar();
  125.                                System.exit(0);
  126.                                 break;
  127.                             case 24:
  128.                               daleplay("24");
  129.                               esperar();
  130.                                System.exit(0);
  131.                                 break;              
  132.                                case 25:
  133.                               daleplay("25");
  134.                               esperar();
  135.                                System.exit(0);
  136.                                 break;
  137.                                
  138.                             case 26:
  139.                               daleplay("26");
  140.                               esperar();
  141.                                System.exit(0);
  142.                                 break;
  143.                                      
  144.                             case 27:
  145.                               daleplay("27");
  146.                               esperar();
  147.                                System.exit(0);
  148.                                 break;
  149.                             case 28:
  150.                               daleplay("28");
  151.                               esperar();
  152.                                System.exit(0);
  153.                                 break;
  154.                              case 29:
  155.                               daleplay("29");
  156.                               esperar();
  157.                                System.exit(0);
  158.                                 break;
  159.                                
  160.                            
  161.                                
  162.                         }  
  163.                  
  164.                                 Mensaje = ""; //Se limpia la variable y se prepara para nueva lectura
  165.                                  
  166.                         }
  167.                     }
  168.                  
  169.             } catch (Exception e) {
  170.                 System.err.println("eer");
  171.             }
  172.         }
  173.        
  174.        
  175.     }
  176.  
  177.     public void ArduinoConnection() {
  178.  
  179.         CommPortIdentifier portId = null;
  180.         Enumeration portEnum = CommPortIdentifier.getPortIdentifiers();
  181.  
  182.         while (portEnum.hasMoreElements()) {
  183.             CommPortIdentifier currPortId = (CommPortIdentifier) portEnum.nextElement();
  184.  
  185.             if (PORT_NAME.equals(currPortId.getName())) {
  186.                 portId = currPortId;
  187.                 estado = true;
  188.                 break;
  189.             }
  190.         }
  191.  
  192.         if (portId == null) {
  193.              System.err.println("olllss");
  194.             System.exit(ERROR);
  195.             return;
  196.         }
  197.  
  198.         try {
  199.  
  200.             serialPort = (SerialPort) portId.open(this.getClass().getName(), TIME_OUT);
  201.  
  202.             serialPort.setSerialPortParams(DATA_RATE,
  203.                     SerialPort.DATABITS_8,
  204.                     SerialPort.STOPBITS_1,
  205.                     SerialPort.PARITY_NONE);
  206.  
  207.             Output = serialPort.getOutputStream();
  208.             Input = serialPort.getInputStream();
  209.  
  210.             serialPort.addEventListener((SerialPortEventListener) this);
  211.             serialPort.notifyOnDataAvailable(true);
  212.            
  213.              
  214.              
  215.              
  216.         } catch (Exception e) {
  217.             System.err.println("oss");
  218.             System.exit(ERROR);
  219.         }
  220.          
  221.     }
  222.    
  223.     public void daleplay(String value)
  224.     {        
  225.        try
  226.        {
  227.    clip=AudioSystem.getClip();
  228.    clip.open(AudioSystem.getAudioInputStream( getClass().getResourceAsStream( ruta + value +".wav" ) ) );
  229.           clip.start();
  230.        }catch(Exception ex){
  231.     System.err.println( ex.getMessage() );
  232.         }
  233.     }
  234. public void pay (String value){
  235. path = getClass().getResourceAsStream(value+ ".wav");
  236.  
  237. try
  238. {
  239.    Clip sonido = AudioSystem.getClip();
  240.    sonido.open(AudioSystem.getAudioInputStream(path));
  241.    sonido.start();
  242.  
  243. }
  244. catch(Exception fallo)
  245. {
  246.     System.out.println(fallo);
  247. }}
  #2 (permalink)  
Antiguo 28/03/2016, 04:57
Avatar de chuidiang
Colaborador
 
Fecha de Ingreso: octubre-2004
Mensajes: 3.774
Antigüedad: 17 años, 1 mes
Puntos: 454
Respuesta: No reproduce sonido mi jar

Hola:

¿Arrancas el jar desde una ventaa de comados para ve si da alguna excepcion o algo?

En los catch, mejor que pone run texto que no dice nada (por ejemplo System.err.println("eer"); ), pon la excepcion concreta que da. Eso puede dar pistas de qué está pasando.

Se bueno.
__________________
Apuntes Java
Wiki de Programación

Etiquetas: clase, jar, netbeans, programa, sonido, string
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 23:26.