Schrift
Wiki:Tipp zum Debugging: use Data::Dumper; local $Data::Dumper::Useqq = 1; print Dumper \@var;
[thread]6242[/thread]

...used only once: possible typo at ...: warnung (stehe auf dem Schlauch)



<< >> 7 Einträge, 1 Seite
format_c
 2004-05-09 22:28
#82150 #82150
User since
2003-08-04
1706 Artikel
HausmeisterIn
[Homepage] [default_avatar]
Hi,
Ich bekomme in meinem Script haufenweise Warnungen wenn ich eine Variable aus einem Paket aufrufen möchte:
$MyModules::Server::Title
Im Verzeichnis MyModules befindet dich die Server.pm
Direkt in der Datei ist die Variable definiert:
my $Title = "Titel";

Dann kommt bei der Ausführung des Haupscriptes warnungen wie:
Code: (dl )
<!-- warning: Name "MyModules::DHCP::Title" used only once: possible typo at info.pl line 60. -->


ICh steh auf dem Schlauch was mir diese Warnung sagen will, obwohl ich sie schon mehrmals gesehen habe.

Kann mir bitte jemand auf die Sprünge helfen.

Gruß Alex\n\n

<!--EDIT|format_c|1084127333-->
jan
 2004-05-09 23:01
#82151 #82151
User since
2003-08-04
2536 Artikel
ModeratorIn
[Homepage] [default_avatar]
ich schätze mal ganz schlicht, dass du die variable nur einmal ausgeben lässt, richtig?
ich bin kein experte für perl-interna, aber vielleicht liegt's (bin zu faul, jetzt zu testen :) daran, dass die varibale einmal als $Modul::Xyz::Variable angesprochen wird und einmal als $title, d.h. am Ende, dass beide (vielleicht, ich bitte um korrektur) einzeln gewertet werden und dann macht die meldung durchaus sinn - du hast sie nur einmal benutzt, allerdings ist es kein tippfehler, sondern verschiedene schreibweisen (sie gibt doch den richtigen wert raus, oder? sonst doch typo ..?)
sri
 2004-05-09 23:20
#82152 #82152
User since
2004-01-29
828 Artikel
BenutzerIn
[Homepage] [default_avatar]
Mach's doch einfach so
Code: (dl )
our $Title = "Titel";

oder so bei Perl < 5.6
Code: (dl )
1
2
use vars qw($Title);
$Title = "Titel";
\n\n

<!--EDIT|sri|1084130480-->
format_c
 2004-05-09 23:54
#82153 #82153
User since
2003-08-04
1706 Artikel
HausmeisterIn
[Homepage] [default_avatar]
@sri: Das ist IMHO nur nötig, wenn du die Variable in die Symboltabelle von main importieren willst. Aber ich spreche ja eigentlich den Namensraum direkt an.
Komisch ist auch dass z.B: in HTML::Template auch die Version durch
$HTML::Template::VERSION = '2.6'; deklariert wird.

Ich kappier einfach nicht was ich verkehrt mache.

GRuß Alex
format_c
 2004-05-10 00:04
#82154 #82154
User since
2003-08-04
1706 Artikel
HausmeisterIn
[Homepage] [default_avatar]
Aber danke sri. So funktionierts natürlich.

Gruß Alex
format_c
 2004-05-10 00:16
#82155 #82155
User since
2003-08-04
1706 Artikel
HausmeisterIn
[Homepage] [default_avatar]
MMh aber irgendwie sind die Variablen nicht definiert aber im Package wurde sie definiert.

Gruß Alex
format_c
 2004-05-10 00:18
#82156 #82156
User since
2003-08-04
1706 Artikel
HausmeisterIn
[Homepage] [default_avatar]
Ach grad gemerkt
Wenn ich die Variablen schon mit $Module::Variable mit vars exportiere muss ich die Variable woh auch so definieren.

Gruß Alex
<< >> 7 Einträge, 1 Seite



View all threads created 2004-05-09 22:28.