Gernot Weber: Error: Runtime exception

Guten Tag Zusammen!

Ich habe folgendes Problem:
Ein Perl-Skript bricht, nachdem es eine Zeit lang gelaufen ist und auch einige Anweisungen ausgeführt hat, mit der Meldung
"Error: Runtime exception" aus heiterem Himmel ab.
Leider weiss ich im Moment nicht, wo ich hier ansetzen soll.
Kann mir jemand einen Ansatz geben?

Viele Grüße
Gernot Weber

  1. Hallo Gernot,

    Ein Perl-Skript bricht, [...], mit der Meldung
    "Error: Runtime exception" aus heiterem Himmel ab.

    [...]

    Kann mir jemand einen Ansatz geben?

    Verwende erstmal "use strict;" und "-w" und laß Dir regelmäßig Ausgaben Deiner Werte, oder einfach nur Hinweise, wo das Skript sich gerade befindet, auf den Screen schreiben. Dann kannst Du vielleicht den Ort des Fehlers ein wenig einengen.

    Gruß AlexBausW

    Please visit my SELFvisitingcard @ http://www.atomic-eggs.com/selfspezial/daten/150.html

    1. Hallo Alex,

      danke erstmal für den Tipp.
      Ich bekomme nun zu jeder Variablen, die ich benutze, die Meldung:

      Global Symbol "$variable" requires explicit package name at NameundPfaddesPerlscriptes Line x

      Was soll das? Kapier ich nicht!
      Kann mir einer noch nen Tipp geben? Danke
      Gruss Gernot

      1. Hallo Gernot,

        Ich bekomme nun zu jeder Variablen, die ich benutze, die Meldung:

        Global Symbol "$variable" requires explicit package name at NameundPfaddesPerlscriptes Line x

        Was soll das? Kapier ich nicht!
        Kann mir einer noch nen Tipp geben? Danke

        Das ist eine Auswirkung von "use strict". Entweder Du greifst mit dem Packetnamen auf die Variable zu (z.B. $main::test) oder aber, was natuerlich sinnvoller ist, Du lokalisierst Deine Variablen mit "my".

        siehe:
        perldoc strict;
        perldoc -f my;

        Gruss Gernot

        »»

        Gruss
           Kai

        1. Hi!

          oder aber, was natuerlich sinnvoller ist, Du lokalisierst Deine Variablen mit "my".

          Sagen wir besser, die Variablen muessen "deklariert" werden. Zwar hast Du technisch gesehen Recht, Kai, aber der (logische) Sinn von use strict ist ja eben, dass man keine undeklarierten Variablen mehr verwenden kann und somit leichter Fehler findet.
          Vor dem ersten Zugriff auf eine Variable also
            my $variable;
          hinschreiben.

          siehe:
          perldoc strict;
          perldoc -f my;

          und
          perldoc perlsub

          Gernot, Du wirst das jetzt wahrscheinlich fuer einen ziemlich grossen Aufwand halten, das alles zu lesen und Dein Script dann aufzupolieren, aber Du wirst sehen, auf Dauer lohnt es sich.

          So long

          1. Hallo!
            Ich werds versuchen!

            Gernot, Du wirst das jetzt wahrscheinlich fuer einen ziemlich grossen Aufwand halten, das alles zu lesen und Dein Script dann aufzupolieren, aber Du wirst sehen, auf Dauer lohnt es sich.

            So schlimm ist es nicht.
            Zunächst mal danke. Ich begebe mich jetzt ans aufpolieren...

            Viele Grüße
            Gernot