Menu

Perl Error: Undefined subroutine x::x called at x

4. April 2017 - Informatik

Der Error „Undefined subroutine“ in Perl bedeutet im Grunde genommen nur, dass die Subroutine, die aufgerufen wird, nicht gefunden bzw. nicht definiert worden ist.

So definiert man eine Subroutine in Perl:

sub testroutine {
#code zum ausführen
}

Wenn man eine Subroutine aus einem anderen package aufrufen möchte muss man diese vorher mit

Use PaketMitSubroutine;

und an gewünschter Stelle im Code:

$data = PaketMitSubroutine::testroutine();

aufrufen. Somit wird klar gestellt, dass „testroutine“ eine Subroutine aus dem package „PaketMitSubroutine“ ist und das Programm dort nach dieser Subroutine suchen muss. Ansonsten würde es im eigenen Paket nach „testroutine“ suchen, jedoch nicht fündig werden und einen Error produzieren.

2 thoughts on “Perl Error: Undefined subroutine x::x called at x

Patrick

Meistens sind nur so kleine Fehler, die dann ein ganzes Script nicht lauffähig machen und solche Fehlermeldungen ausspucken.

Es ist daher immer wieder gut, wenn man Probleme/Fallstricke aus dem Alltag nicht für sich behält, sondern mit anderen teilt und es weitergibt.

Reply
    Lars Joppich

    Danke nochmal für die Hilfe :’D

    Reply

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.