Zum Inhalt springen

Module not found Fehler: Warum er auftritt und wie Sie ihn beheben

Einfach 10 Min. Aktualisiert:

Kurze Antwort

Der Fehler Module not found bedeutet, dass das Programm ein Modul oder Paket nicht finden kann, das es laden möchte. Die häufigsten Ursachen sind ein falscher Name oder Pfad, ein nicht installiertes Modul, ein falsches Arbeitsverzeichnis oder eine nicht übereinstimmende Umgebung. Die Lösung besteht darin, den Import zu prüfen, das Paket zu installieren und das Projekt aus dem richtigen Ordner zu starten.

So erkennen Sie das Problem

  • Meldung `ModuleNotFoundError: No module named 'x'` in Python
  • Meldung `Error: Cannot find module 'x'` in Node.js
  • Die Anwendung stürzt direkt nach dem Start ab
  • Der Fehler tritt nur auf einem anderen Rechner oder in der CI-Umgebung auf
  • Der Import funktioniert im Editor, aber nicht im Terminal

Häufigste Ursachen

Modul nicht installiert

Das vom Code benötigte Paket ist in der Umgebung nicht vorhanden. Das passiert oft, wenn `npm install` oder `pip install` nach dem Herunterladen des Projekts nicht ausgeführt wurde.

Falscher Name oder Pfad

Der Import enthält einen Tippfehler, einen falschen relativen Pfad oder es fehlt `__init__.py` im Python-Paket. Node.js sucht den exakten Modulnamen in `node_modules`.

Falsches Arbeitsverzeichnis

Der Befehl wird aus einem Ordner ausgeführt, der nicht das Projektstammverzeichnis ist, sodass `node_modules` oder die virtuelle Umgebung nicht sichtbar sind. Prüfen Sie, in welchem Ordner Sie sich vor dem Start befinden.

Nicht übereinstimmende Umgebung

Sie verwenden ein globales Python statt einer virtuellen Umgebung oder eine andere Node.js-Version als vom Projekt erwartet. Die Abhängigkeiten sind dann nicht sichtbar.

Probleme mit Cache oder Installation

Ein teilweise installiertes Paket, beschädigte `node_modules` oder eine veraltete `package-lock.json` können dazu führen, dass das Modul zwar existiert, aber nicht verfügbar ist.

Lösung Schritt für Schritt

  1. 1

    Lesen Sie den genauen Modulnamen aus der Fehlermeldung

    Die Meldung im Terminal nennt den Namen des fehlenden Moduls. Notieren Sie ihn und vergleichen Sie ihn mit der Importzeile im Code. In Node.js beginnt der Fehler normalerweise mit Error: Cannot find module, in Python mit ModuleNotFoundError.

  2. 2

    Prüfen Sie, ob Sie sich im Projektstammverzeichnis befinden

    Führen Sie pwd (macOS/Linux), cd in der Windows-Eingabeaufforderung oder Get-Location in PowerShell aus, um den aktuellen Ordner zu sehen. Dort sollten package.json für Node.js oder requirements.txt/pyproject.toml für Python vorhanden sein. Wenn nicht, wechseln Sie mit cd Pfad/zum/projekt in den richtigen Ordner.

  3. 3

    Installieren Sie die Abhängigkeiten

    Führen Sie für Node.js npm install im Projektstammverzeichnis aus. Aktivieren Sie für Python die virtuelle Umgebung und führen Sie dann pip install -r requirements.txt aus. Wenn das Modul weiterhin fehlt, installieren Sie es einzeln: npm install paketname oder pip install paketname.

  4. 4

    Prüfen Sie Import und Pfad

    Stellen Sie sicher, dass der Import dem tatsächlichen Paketnamen und der Ordnerstruktur entspricht. In Python hängen relative Importe davon ab, von wo aus das Modul gestartet wird; prüfen Sie in Node.js, ob der Pfad für lokale Dateien mit ./ beginnt. Achten Sie auf Groß- und Kleinschreibung.

  5. 5

    Cache leeren und neu installieren

    Wenn das Modul existiert, aber nicht sichtbar ist, erstellen Sie vor dem Löschen eine Sicherung des Projekts oder prüfen Sie, ob es im Git-Repository gespeichert ist. Löschen Sie dann node_modules und package-lock.json und führen Sie erneut npm install aus; das Löschen von package-lock.json kann die Versionen der Abhängigkeiten ändern. Löschen Sie in Python die __pycache__-Ordner und installieren Sie das Paket erneut. Der Vorgang kann einige Zeit dauern.

  6. 6

    Prüfen Sie Sprachversion und Umgebung

    Führen Sie node -v oder python --version aus und vergleichen Sie mit den Anforderungen des Projekts. Prüfen Sie in Python, ob die virtuelle Umgebung aktiviert ist (die Eingabeaufforderung zeigt ihren Namen). Verwenden Sie in Node.js nvm, wenn ein Versionswechsel nötig ist.

  7. 7

    Testen Sie isoliert

    Erstellen Sie ein minimales Skript, das nur das Modul importiert, und führen Sie es aus. Wenn es auch dann fehlschlägt, liegt das Problem an der Installation oder Umgebung, nicht am restlichen Code. Wenn es funktioniert, liegt der Fehler am Pfad oder an der Art, wie die Hauptanwendung gestartet wird.

Wenn nichts hilft

Wenn Sie alle Schritte durchgegangen sind und der Fehler bleibt, prüfen Sie, ob das Projekt ein Monorepo oder Workspace-Konfiguration verwendet, bei der sich Pakete in einem anderen Ordner befinden. Prüfen Sie auch, ob eine globale Installation den Mangel einer lokalen Installation verdeckt. Führen Sie in Node.js npm ls paketname aus, um zu sehen, ob das Paket überhaupt im Abhängigkeitsbaum vorhanden ist. In Python gibt pip show paketname den Installationsort an. Wenn der Fehler nur im CI-System auftritt, vergleichen Sie Sprachversionen und Installationsschritte mit der lokalen Umgebung. Als letzte Option erstellen Sie eine neue virtuelle Umgebung oder einen frischen Klon des Projekts und wiederholen die Installation.

So beugen Sie vor

  • Führen Sie nach dem Herunterladen eines Projekts immer `npm install` oder `pip install -r requirements.txt` aus
  • Sperren Sie die Versionen der Abhängigkeiten (`package-lock.json`, `requirements.txt`) und halten Sie sie im Repository
  • Verwenden Sie eine virtuelle Umgebung für Python und `nvm` für Node.js
  • Prüfen Sie vor dem Ausführen von Befehlen, ob Sie sich im Projektstammverzeichnis befinden

Wann Sie einen Profi rufen sollten

Wenn der Fehler aus einem komplexen Build-System, einem Monorepo oder einer CI-Konfiguration stammt oder trotz aller Schritte wiederholt auftritt, wenden Sie sich an den IT-Support, um gemeinsam Umgebung und Abhängigkeiten zu prüfen.

Software- und Produktentwicklung · Individuelle Apps, SaaS und ein MVP in 4 bis 8 Wochen

Häufige Fragen

Warum tritt Module not found auf, obwohl das Paket installiert ist?

Meistens, weil der Befehl eine andere Umgebung verwendet als die, in der das Paket installiert wurde. Prüfen Sie, ob die virtuelle Umgebung aktiv ist oder ob Sie sich im richtigen Projektordner befinden.

Ist es sicher, node_modules und package-lock.json zu löschen?

In der Regel ja, aber erstellen Sie zuerst eine Sicherung des Projekts oder prüfen Sie, ob es im Git-Repository gespeichert ist. Das Löschen von `package-lock.json` kann die Versionen der Abhängigkeiten ändern; führen Sie nach dem Löschen erneut `npm install` aus, damit die Abhängigkeiten aus `package.json` installiert werden.

Wie finde ich heraus, welches Modul fehlt, wenn die Fehlermeldung unklar ist?

Starten Sie die Anwendung im Terminal und lesen Sie die letzte Zeile der Fehlermeldung; dort steht normalerweise der Modulname. In Python können Sie `python -v` für eine ausführlichere Ausgabe der Importe ausführen.

Teilen
Keine Lösung gefunden?Der KI-IT-Assistent ist rund um die Uhr erreichbar. Beschreiben Sie das Problem oder senden Sie einen Screenshot und erhalten Sie eine Anleitung für Ihren Fall.KI-IT-Assistent fragen