Daniel,<br><br>Segue um exemplo:<br><br>t.pl:<br>&lt;code&gt;<br>use strict;<br>use warnings;<br><br>use G;<br><br># é necessário para que o módulo G possa enxergar a variável.<br>our $TEST = 1;<br><br>G-&gt;run();<br>&lt;/code&gt;
<br><br><a href="http://G.pm">G.pm</a>:<br>&lt;code&gt;<br>package G;<br><br>sub run {<br>&nbsp;&nbsp;&nbsp; my $instance = &quot;live&quot;;<br>&nbsp;&nbsp;&nbsp; $instance = &quot;test&quot; if ($main::TEST);<br>&nbsp;&nbsp;&nbsp; print &quot;$instance\n&quot;;<br>
}<br>1;<br>&lt;/code&gt;<br><br>Então, o *our* é necessário para que a variável possa ser vista fora do escopo do pacote main.<br><br>Espero que ajude.<br><br><div><span class="gmail_quote">On 6/16/06, <b class="gmail_sendername">
Daniel R. Antunes</b> &lt;<a href="mailto:danielrantunes@yahoo.com.br">danielrantunes@yahoo.com.br</a>&gt; wrote:</span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
&nbsp;&nbsp;&nbsp;&nbsp;Olá amigos da lista...<br>&nbsp;&nbsp;&nbsp;&nbsp;Eu postei esta mensagem no &quot;perl-br&quot; mas infelizmente ninguém respondeu, desculpem se minha pergunta for obvia por demais, mas é uma dificuldade que estou tendo e não conseguindo resolver. Eu venho da linguagem C/C++ e ainda apanho com alguns aspectos do Perl, principalmente as questões relacionadas a namespaces, variáveis de pacote, escopos léxicos, enfim... Acho que tenho me saido bem na migração, mas... Obs: Eu encomendei o livro &quot;Perl for C programmers&quot; para ver se paro de encher a paciência dos amigos com estas perguntas. :)
<br>&nbsp;&nbsp;&nbsp;&nbsp;Bom, vamos ao problema que estou tendo :<br><br>package modules::G;<br>require Exporter;<br>use strict;<br>use LWP::UserAgent;<br>use funcs;<br># Export some symbols<br>our @ISA&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=&nbsp;&nbsp;&nbsp;&nbsp;qw(Exporter);<br>
our @EXPORT&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=&nbsp;&nbsp;&nbsp;&nbsp;qw(&nbsp;&nbsp;&nbsp;&nbsp;&amp;construct_G_XML_doc<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;submit_G<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&amp;g_start<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&amp;g_char
<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&amp;g_end);<br>our @EXPORT_OK&nbsp;&nbsp;&nbsp;&nbsp;=&nbsp;&nbsp;&nbsp;&nbsp;qw();<br>our $VERSION&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=&nbsp;&nbsp;&nbsp;&nbsp;0.01;<br># Global variables<br>my $false=0;<br>my $true=1;<br>my $gsubmission_url;<br>my $gretrieval_url;
<br>my $glogin;<br>my $gpass;<br># Used by parsers<br>my %audit_info;<br>my %summary_info;<br>my %product;<br>my $spCode;<br><br>&nbsp;&nbsp;&nbsp;&nbsp;Isto faz parte do módulo G de meu sistema (um daemon) e está funcionando<br>perfeitamente.
<br>&nbsp;&nbsp;&nbsp;&nbsp;Mas... Eu tenho uma variável chamada TEST que é setada na<br>inicialização do serviço usando &quot;-t&quot;, o getopt pega esta informação e<br>torna o TEST true ou false, isto está no main; eu gostaria de testá-la
<br>no ponto inicial deste módulo assim :<br><br>if ($main::TEST){<br>&nbsp;&nbsp; $gsubmission_url='<a href="http://url/de/testes">http://url/de/testes</a>';<br>&nbsp;&nbsp; $gretrieval_url='<a href="http://url/de/testes/RetrieveListenerServlet">
http://url/de/testes/RetrieveListenerServlet</a>';<br>&nbsp;&nbsp; $glogin='LOGIN';<br>&nbsp;&nbsp; $gpass='PASS';<br>}<br>else{<br>&nbsp;&nbsp; $gsubmission_url='<a href="http://url/live">http://url/live</a>';<br>&nbsp;&nbsp; $gretrieval_url='<a href="http://url/live/RetrieveListenerServlet">
http://url/live/RetrieveListenerServlet</a>';<br>&nbsp;&nbsp; $glogin='LOGIN_OFICIAL';<br>&nbsp;&nbsp; $gpass='SENHA_OFICIAL';<br>}<br><br>&nbsp;&nbsp;&nbsp;&nbsp;Mas eu não estou conseguindo, ele sempre entra no else por que o main::TEST<br>não existe neste ponto (inicio do módulo), eu utilizo o &quot;strict&quot; e o &quot;-w&quot; na inicialização do serviço, no entanto nenhum erro é reportado. Se eu coloco em qualquer das subs do módulo funciona, e é
<br>como está por hora.&nbsp;&nbsp;:(<br>&nbsp;&nbsp;&nbsp;&nbsp;Alguém poderia me ajudar ?<br>&nbsp;&nbsp;&nbsp;&nbsp;Desde já muito obrigado.<br><br><br>--<br>|---------------------------------------------.---.-\<br>| Daniel R. Antunes (Profiss. de informática) )\-/( |
<br>| ...... <a href="http://www.daniel-antunes.com.br">www.daniel-antunes.com.br</a> (Web Site) (OvO) |<br>| ... <a href="mailto:danielrantunes@sorria.com.br">danielrantunes@sorria.com.br</a> (M$Nmsger) (( )) |<br>|~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~&quot;~&quot;~~|
<br>| ICQº 107888741 ~ GNU/Linuxº 238553 ~ GotNiX 'ÜÜÜ' |<br>\---------------------------------------------------|<br><br><br><br><br><br><br>_______________________________________________________<br>Yahoo! doce lar. Faça do Yahoo! sua homepage.
<br><a href="http://br.yahoo.com/homepageset.html">http://br.yahoo.com/homepageset.html</a><br><br>_______________________________________________<br>Cascavel-pm mailing list<br><a href="mailto:Cascavel-pm@pm.org">Cascavel-pm@pm.org
</a><br><a href="http://mail.pm.org/mailman/listinfo/cascavel-pm">http://mail.pm.org/mailman/listinfo/cascavel-pm</a><br></blockquote></div><br><br clear="all"><br>-- <br>Igor Sutton Lopes<br><a href="http://www.izut.com/">
http://www.izut.com/</a>