2016-04-09 4 views
0

Ich habe eine kleine Knoten-App basierend auf dotenv und node-localstorage erstellt. Meine App soll global sein.Meine globale Knoten-App finde keine .env- oder localstorage-Datei im Projektordner

Wenn ich versuche, es aus dem Modulordner zu starten, gibt es kein Problem. Alle Dateien sind gefunden und alles ist in Ordnung. Wenn ich versuche, es von außerhalb des Modulordners zu starten, beschwert sich meine App, dass keine Dateien gefunden wurden, die sich auf diese Module beziehen.

Sollte ich etwas in der package.json Datei konfigurieren, um dieses Problem zu beheben?

+0

Hinweis: Dateipfade sind relativ zum * * aktuellen Arbeitsverzeichnis ([ 'process.cwd()'] (https://nodejs.org/ dist/Neueste-v5.x/docs/api/process.html # Prozess_prozess_cwd)). Sie müssen einen absoluten Pfad angeben, wenn Sie das Arbeitsverzeichnis nicht garantieren können, das beim Starten Ihrer Anwendung verwendet wird. –

Antwort

4

Standardmäßig verwendet dotenv den Pfad .env, um auf Ihre Umgebungsdatei zuzugreifen(). Dieser Pfad ist daher relativ zu dem Ort, an dem Sie Ihre Anwendung starten. Wenn Ihr aktuelles Arbeitsverzeichnis beispielsweise /somedir lautet und Sie Ihre Anwendung mit node /path/to/your/app.js ausführen, sucht dotenv nach einer /somedir/.env-Datei, die wahrscheinlich nicht existiert.

Um dies zu korrigieren, können Sie verwenden:

var dotenv = require('dotenv').config({path: '/path/to/your/project/.env'}); 
+0

Ich erhalte {[Fehler: ENOENT: keine solche Datei oder Verzeichnis, öffnen '.env'] errno: -2, Code: 'ENOENT', syscall: 'offen', Pfad: '.env'}. Und ich möchte meine App mit nur einem Namen wie grunt-cli tun starten. Also habe ich die bin-Eigenschaft in meine package.json-Datei geschrieben. –

+0

Wie verwenden Sie Ihre .env-Datei? (aus Node-Skript, Grunt-Task) Wenn Sie darauf verweisen, verwenden Sie './. env' (mit dem nachgestellten'./')? – christophetd

+0

Ich verwende das Dotenv-Paket, um wichtige Schlüssel zu speichern. Ich mache nichts, es ist das Paket, das es lädt. https://www.npmjs.com/package/dotenv –

Verwandte Themen