IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Modules Perl Discussion :

warning : subroutine redefined


Sujet :

Modules Perl

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Février 2009
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 8
    Par défaut warning : subroutine redefined
    Bonjour,

    j'ai réalisé un script qui charge dynamiquement des modules via les instructions suivantes:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    # CHARGEMENT DU MODULE #
    require $module_name.".pm";
    $module_name->import();
    Dans mes modules, j'exporte les fonctions de cette manière :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    use Exporter;
     
    # Exportation des fonctions
    our @ISA = ('Exporter');
    our @EXPORT = qw (&initialize &terminate &launch_check &get_errors_id &get_errors_lines &get_errors_files &get_errors_info_supp);
    Lors de l'exécution, tout se passe bien, le mécanisme marche, mais ma console est parasitée de warnings :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
     
    Subroutine main::initialize redefined at E:\DEVELOPPEMENT\POLUX\Scripts\Checker GPC-DSD\Exe\checker.pl line 432
    	main::main() called at E:\DEVELOPPEMENT\POLUX\Scripts\Checker GPC-DSD\Exe\checker.pl line 547
    Subroutine main::terminate redefined at E:\DEVELOPPEMENT\POLUX\Scripts\Checker GPC-DSD\Exe\checker.pl line 432
    	main::main() called at E:\DEVELOPPEMENT\POLUX\Scripts\Checker GPC-DSD\Exe\checker.pl line 547
    Subroutine main::launch_check redefined at E:\DEVELOPPEMENT\POLUX\Scripts\Checker GPC-DSD\Exe\checker.pl line 432
    	main::main() called at E:\DEVELOPPEMENT\POLUX\Scripts\Checker GPC-DSD\Exe\checker.pl line 547
    Subroutine main::get_errors_id redefined at E:\DEVELOPPEMENT\POLUX\Scripts\Checker GPC-DSD\Exe\checker.pl line 432
    	main::main() called at E:\DEVELOPPEMENT\POLUX\Scripts\Checker GPC-DSD\Exe\checker.pl line 547
    Subroutine main::get_errors_lines redefined at E:\DEVELOPPEMENT\POLUX\Scripts\Checker GPC-DSD\Exe\checker.pl line 432
    	main::main() called at E:\DEVELOPPEMENT\POLUX\Scripts\Checker GPC-DSD\Exe\checker.pl line 547
    Subroutine main::get_errors_files redefined at E:\DEVELOPPEMENT\POLUX\Scripts\Checker GPC-DSD\Exe\checker.pl line 432
    	main::main() called at E:\DEVELOPPEMENT\POLUX\Scripts\Checker GPC-DSD\Exe\checker.pl line 547
    Subroutine main::get_errors_info_supp redefined at E:\DEVELOPPEMENT\POLUX\Scripts\Checker GPC-DSD\Exe\checker.pl line 432
    	main::main() called at E:\DEVELOPPEMENT\POLUX\Scripts\Checker GPC-DSD\Exe\checker.pl line 547
    Impossible de les désactiver ou de les solutionner. Quelqu'un aurait une solution ?

    Je me demande si il n'y a pas une autre façon d'exporter...

    Merci d'avance.

  2. #2
    Invité
    Invité(e)
    Par défaut
    Quel est le contenu des lignes 432 et 547 du fichier checker.pl ?

  3. #3
    Expert confirmé
    Avatar de Jedai
    Homme Profil pro
    Enseignant
    Inscrit en
    Avril 2003
    Messages
    6 245
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Avril 2003
    Messages : 6 245
    Par défaut
    met ton bout de code dans un bloc avec no warnings "redefine"; :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    {
       no warnings qw/redefine/;
       # CHARGEMENT DU MODULE #
       require $module_name.".pm";
       $module_name->import();
    }
    Lis "perldoc perllexwarn" pour plus de détails sur les merveilles des warnings à portée lexicale (très pratique parfois pour relaxer les règles proprement).

    --
    Jedaï

Discussions similaires

  1. un warning
    Par isidore dans le forum C
    Réponses: 6
    Dernier message: 14/04/2004, 12h25
  2. Un warning devient fatal
    Par tomnie dans le forum Linux
    Réponses: 3
    Dernier message: 01/04/2004, 13h48
  3. [langage] Récupérer des Warning ??
    Par armada dans le forum Langage
    Réponses: 2
    Dernier message: 05/06/2003, 16h45
  4. [warning][properties]problème de police introuvable
    Par cyrdec dans le forum API standards et tierces
    Réponses: 8
    Dernier message: 11/04/2003, 17h41
  5. Warnings lors de la compilation
    Par polo54 dans le forum C
    Réponses: 5
    Dernier message: 07/02/2003, 09h12

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo