Como llamar un reporte

Diseñe un reporte con ireport, ya tengo el archivo reporte.jasper
Ahora no se como llamar ese archivo desde un boton para que imprima el reporte.

Estoy trabajando con eclipse, mire unos ejemplos con netbeans pero solo me confuendieron.

Alguien me da una mano.

Opciones de visualización de comentarios

Seleccione la forma que prefiera para mostrar los comentarios y haga clic en «Guardar las opciones» para activar los cambios.

solucionado

esta fase ya la solucione con google

¿Cual fue la solución?

¿Cual fue la solución?

realize esta clase

Realize esta clase con un método para llamar al reporte. el metodo recibe un String que modifica la consulta del reporte

public class VentaClientes {
       
         private Connection conn;
            private final String login = "root"; //usuario de acceso a MySQL
            private final String password = "**********"; //contraseña de usuario
            private String url = "jdbc:mysql://localhost/Ventas";

            public VentaClientes()
            {        
                try
                {
                    Class.forName("com.mysql.jdbc.Driver"); //se carga el driver
                    conn = DriverManager.getConnection(url,login,password);
                }
                catch (ClassNotFoundException ex)
                {
                    ex.printStackTrace();
                }
                catch (SQLException ex)
                {
                    ex.printStackTrace();
                }
               
               
            }
           
            public void runReporte(String consulta )
            {

                try
                {  

                    String fileName = System.getProperty("user.dir") +"/src/reportes/ireports/Ventas_Cliente.jrxml";
                   

                    if (fileName == null)
                    {                
                        System.out.println("No encuentro el archivo del reporte.");
                        System.exit(2);
                    }

                   
                   
                File theFile = new File(fileName);
                JRDesignQuery newQuery = new JRDesignQuery();
                JasperDesign jasperDesign = JRXmlLoader.load(theFile);
                newQuery.setText(theQuery);
                jasperDesign.setQuery(newQuery);
               
                 JasperReport jasperReport = JasperCompileManager.compileReport(jasperDesign);
                 JasperPrint jasperPrint = JasperFillManager.fillReport(jasperReport, null, conn);
                 JasperViewer jviewer = new JasperViewer(jasperPrint,false);
                 jviewer.setTitle("Sistema de gestión de Cartera");
                 jviewer.setVisible(true);
                   
                }

                catch (Exception j)
                {
                    System.out.println("Mensaje de Error:"+j.getMessage());
                }
               
            }
           
            public void cerrar()
            {
                        try
                        {
                            conn.close();
                        }
                        catch (SQLException ex)
                        {
                            ex.printStackTrace();
                        }
            }

}

y en el boton Instancio a la clase y llamo al metodo
codigo dle boton

        private JButton getBtnImprimir() {
                if (btnImprimir == null) {
                        btnImprimir = new JButton("Imprimir");
                        btnImprimir.setBounds(16, 364, 90, 35);
                        btnImprimir.addActionListener(new ActionListener() {
                                public void actionPerformed(ActionEvent arg0) {
                                                if(cBTConsulta.getSelectedItem().equals("Consulta de Ventas")){
                                                //System.out.println(query);
                                              String consulta="SELECT ......... from ..........";
                                                Ventaclientes jasper = new VentasClientes();

                                                jasper.runReporte(consulta);
                                               
                                               
                                                }
                                       
                                }
                        });
                }
                return btnImprimir;
        }

Espero y le sirva a alguien

Agradecimiento

Gracias muy bueno, nos fue de gran ayuda!!! nos sacaste de un buen apuro.

SALUDOS

Imagen de palma

GRACIAS MI HERMANO ME ESTA

GRACIAS MI HERMANO ME ESTA SIRVIENDO MUCHISIMO, YA QUE ESTOY EMPEZANDO A UTILIZAR IREPORT EN JAVA.