Holen Sie sich die node.js installieren Sie Weg vom code
Ich versuche zu schreiben, eine debugging-framework für node.js und bin eine harte Zeit, herauszufinden, wie man den vollständigen Pfad zu einem core-Modul-Datei, wie fs.js
.
Ich habe gehört, es ist in der /lib
- Ordner der installation Knoten, aber würde ich brauchen, um dieses aus dem code in einer konsistenten Art und Weise für eine Vielzahl von installieren Situationen (einschließlich windows).
Ich habe versucht, einen Blick auf die process
und process.env
Werte für so etwas wie ein Knoten installieren, der Pfad kann aber nichts sehen, dass sofort öffnet sich bei mir.
- suchen Sie in
require.cache
, aber es scheint nicht, eine direkte Zuordnung zwischen den Namen des Moduls und den Dateinamen, dhrequire('fs')
undfs/index.js
require.cache
nicht wirklich helfen. Es gibt keine Garantie, dass der name der Datei entspricht einer tatsächlichen module; sprich, ich könnte brauchen, um zu ladenfsHelper.js
imfs
Modul.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Zu finden, wo die installierten Knoten EXE-Datei befindet, die Sie sehen können, das Prozess.execPath das gibt den absoluten Pfad zu Knoten ausführbar.
Finden, wo ein bestimmtes Modul befindet, können Sie erfordern.beheben(Modul);
Aber ich denke, der Globale Module sind nicht direkt aus dem Dateisystem, wie andere normale Module, da Sie zu sein scheinen-Cache irgendwo in der ausführbaren Datei.
process.config.variables.node_prefix
wurde es besser, die Knoten-Pfad für ausführbare Dateien.process.env.PATH
ist nur meine regelmäßigen path-variable und ich denke windows könnte eigentlich eineNODE_PATH
. Auch, nur eine kurze node repl check derrequire.resolve("fs")
würde, zeigen Sie, dass ist keine Hilfe für mich.