• Publicidad

Comprobacion de módulo

Aquí encontrarás todo lo que sea específicamente acerca de módulos de Perl. Ya sea que estás compartiendo tu módulo, un manual o simplemente tienes una duda acerca de alguno.

Comprobacion de módulo

Notapor situ » 2008-01-31 11:36 @525

Buenas,
Los molesto para consultarles cómo puedo hacer una comprobación si tengo un módulo instalado.
Tengo un script el cual utiliza un módulo y muchas veces cuando lo comparto con otra persona no le anda porque no tiene el módulo instalado y este no se da cuenta que por este motivo no le funciona.
Entonces me gustaría que cuando ocurra esto que salga por pantalla un simple PRINT donde le informe que instale el módulo :D

Gracias
situ
Perlero nuevo
Perlero nuevo
 
Mensajes: 358
Registrado: 2007-04-09 01:44 @114

Publicidad

Notapor explorer » 2008-01-31 13:05 @586

Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
#!/usr/bin/perl

BEGIN {
    eval "use Games::Nintendo::Mario";
    if ( $@ ) {
        die "ERROR al cargar el módulo: $!\n";
    }
}

1;
 
Coloreado en 0.002 segundos, usando GeSHi 1.0.8.4


Sacado del Perl CookBook.

P.D: Sí que existe el módulo Games::Nintendo::Mario.
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Notapor situ » 2008-01-31 13:26 @602

Gracias
situ
Perlero nuevo
Perlero nuevo
 
Mensajes: 358
Registrado: 2007-04-09 01:44 @114

Notapor situ » 2008-01-31 15:40 @694

Consulté el código que me pasaste. Anda bien, pero me figuran en pantalla las líneas que no se pueden ejecutar por el tema del módulo; me gustaría que éstas no estén.
Traté de poner un no warnings; e igualmente figura.
situ
Perlero nuevo
Perlero nuevo
 
Mensajes: 358
Registrado: 2007-04-09 01:44 @114

Notapor explorer » 2008-01-31 16:27 @727

Lo normal es que con el die el programa termine inmediatamente, al fallar la ejecución del programa (en tiempo de ejecución, por eso está en un BEGIN).

Quizás los fallos que ves están sucediendo en tiempo de compilación...

¿No puedes enseñarlos?
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Notapor situ » 2008-01-31 17:01 @751

Aparece lo siguiente:
C:\>perl nmap.pl
ERROR al cargar el modulo: Nmap:Scanner
command: cpancpan> install Nmap::Scanner at nmap.pl line
BEGIN failed--compilation aborted at nmap.pl line 8.

Lo que está en negrita sería lo que está de más :d

El código de la aplicación es:
http://pastebin.org/17660
situ
Perlero nuevo
Perlero nuevo
 
Mensajes: 358
Registrado: 2007-04-09 01:44 @114

Notapor explorer » 2008-01-31 17:42 @779

Pon un "\n" al final del die, es decir, al final de la última frase que pinta el die.
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Notapor explorer » 2008-01-31 17:48 @784

Me he colado...

Cambia die() por warn() y pon a continuación un exit().
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Notapor situ » 2008-01-31 18:48 @825

Gracias voy a probarlo
situ
Perlero nuevo
Perlero nuevo
 
Mensajes: 358
Registrado: 2007-04-09 01:44 @114


Volver a Módulos

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 1 invitado