2016-08-04 30 views
1

Ich habe eine EC2-Instanz auf AWS mit Ubuntu (14.04) erstellt. Ich versuche, Arangodb-Anwendung mit Foxx-Manager auf diesem zu installieren. Ich habe es mit Putty verbunden. Ich habe das Arangodb mit sudo apt-get install arangodb installiert. Ich habe auch Projekt von Git auf ubuntu Maschine. Wenn ich versuche, die Anwendung mit foxx-manager installieren zu installieren./DataSandbox es Fehler alsFehler bei der Installation der Anwendung arrangoDB mit dem foxx-Manager

„StdOut gibt: ArangoError 3103: failed Modul aufrufen
Datei:. /var/lib/arangodb-apps/_db/_system/DataSandbox/APP/controllers/Reports.js
Ursache: ArangoError 3100: Repositories/Berichte“

wenn ich die Datei-Repositories prüfen/Berichte vorhanden, und wenn ich sie/var/lib/arangodb-apps Weg es dort bis Datasandbox ist: kann nicht Modul
Datei lokalisieren wie/var/lib/arangodb-apps/_db/_system/DataSandbox /. Datasandbox-Ordner ist in Arangodb-Apps leer.

Der gleiche Prozess habe ich in verschiedenen Ubuntu-Maschine, die nicht von AWS erstellt wird. Darauf wurde es erfolgreich installiert.

Kann jemand bitte mich auf diesen Fehler führen kann Modul nicht finden?

Vielen Dank im Voraus.

Antwort

2

Können Sie klären, ob auf den beiden Rechnern, auf denen Sie verschiedene Ergebnisse gesehen haben (d. H. Das, an dem es arbeitete und das nicht), dieselbe Version von ArangoDB lief und welche Version (en) Sie verwendeten?

Der Fehler gibt es einen require Anruf in controllers/Reports.js für repositories/Reports, die nicht gelöst werden kann. Wenn die Maschine mit ihm gearbeitet wurde eine ältere Version von ArangoDB laufen könnte es sein, dass Sie etwas von der Änderung werden, wie require löst bestimmte Namen: https://www.arangodb.com/2015/11/foxx-module-resolution-will-change-in-2-8/

Ich glaube, Sie buchstäblich einen Ausdruck wie dies in Ihrem Controller haben:

genannt „Repositories/Berichte“ und nicht

require('repositories/Reports')

arbeitet Dies gilt nicht in 2.8 und später, da sie versuchen, einen (von Drittanbietern oder ArangoDB) -Modul zu finden.

Statt das sollte ein relativer Pfad von der Controller-Datei in die Repository-Datei sein:

require('../repositories/Reports')