2012-11-05 10 views
5

Ich verwende derzeit das Dojotoolkit und sein Build-System. Ich lese das neue Build-Tutorial für 1.8 bei http://dojotoolkit.org/documentation/tutorials/1.8/build/. Im Tutorial wird erwähnt, dass Sie Ihren Build beschleunigen können, indem Sie nodejs verwenden.Wie mache ich einen Dojo-Build mit nodejs?

Das Build-Tool selbst basiert auf Java (und optional Node.js für noch schnellere Builds), also stellen Sie sicher, dass Sie das auch installiert haben.

Aber es wird nicht erwähnt, wie dies zu tun ist. Wer weiß wie das funktioniert?

Antwort

8

Ich laufe es in der Regel wie folgt aus:

> node dojo/dojo.js load=build --profile myprofile.profile.js --release 

Dies würde eine Freigabe für die in myprofile.profile.js enthaltenen Profil aufzubauen. Es wird davon ausgegangen, dass Sie sich in einem Verzeichnis befinden, das sowohl Dojo als auch util als Unterverzeichnisse enthält. Es wird außerdem vorausgesetzt, dass der Pfad zum Knoten korrekt festgelegt ist.

Wenn der Knoten nicht in der Pfadvariablen konfiguriert ist, müssen Sie den vollständigen Pfad zum Knoten verwenden:

> <path to node here> dojo/dojo.js load=build --profile myprofile.profile.js --release 

Auf Fenster der Pfad normalerweise C: \ Programme \ NodeJS \ aber Sie Möglicherweise müssen Sie es als C: \ PROGRA ~ 1 \ nodejs \ konfigurieren, damit es funktioniert.


Windows-Hinweise:
Der Build-Skripte mit Knoten unter Windows nicht funktionieren (Cygwin, außer der Verwendung). Wenn Sie Windows verwenden können Sie es über den folgenden Patch arbeiten:

Verwenden Sie den beigefügten Knoten-win.patch Datei, um die Dateien zu bearbeiten: util/build/main. js und util/build/transforms/writeOptimized.js. Der Patch hat für mich 100% der Zeit funktioniert und es ist eine einfache Angelegenheit, ein paar Zeilen Code zu bearbeiten.

Ich persönlich habe die Alternative zu Node, mit Rhino, nutzlos gefunden. Die Buildpfade können immer nicht korrekt erkannt werden, egal, wofür ich basePath eingerichtet habe. Ich rate dringend, Node über Rhino zu verwenden, da es zuverlässiger und einfacher einzurichten ist.

+0

Ich war in der Lage, Rhino arbeiten zu lassen und ja die richtigen Pfade zu bekommen kann schwierig sein. Ich habe gerade in node.js konvertiert und es ist viel schneller. Danke, dass du auf den Patch hingewiesen hast. –

1

Das Buildskript util/buildscripts/build.sh überprüft, ob Knoten in Ihrem Pfad ist und wenn ja, verwendet es.

Dies funktioniert derzeit nicht unter Windows (http://bugs.dojotoolkit.org/ticket/15413).