Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > JavaScript > Bibliothèques & Frameworks > Dojo
Dojo Forum d'entraide sur le framework Dojo
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 02/09/2011, 08h20   #1
Membre du Club
 
Inscription : avril 2009
Messages : 72
Détails du profil
Informations forums :
Inscription : avril 2009
Messages : 72
Points : 56
Points : 56
Par défaut Build Dojo perso

Bonjour à tous,

En ce vendredi matinal je voudrais revenir sur un problème récurrent avec notre Framework préféré : la création de builds optimisées personnalisées aux projets que nous développons.

Comme la dernière bêta est sortie (1.7.0 b5 - release le 29 aout), je voulais la tester sur mon projet. N'ayant pas fait de build depuis longtemps, j'ai d'abord essayé de me servir de l'outil online : http://build.dojotoolkit.org/

Ok c'est bien beau mais déjà il n'y a pas les version bêta et de plus pas moyen d'utiliser l'analyseur pour qu'il me crée un profile. Je suis obligé de tout rentrer à la main un à un : fastidieux mais fonctionnel.

Bon alors à ce moment là je décide de créer un profile.js perso appelons le custom.profile.js :

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
 
dependencies = {
	optimize:"shrinksafe",
	cssOptimize:"comments.keepLines",
	releaseName:"test",
	mini:"false",
 
	layers: [
	{
		name: "custom_dojo.js",
		dependencies: [
		"dojo.dnd.Source",
		"dojo.io.iframe",
		"dojo.parser",
		"dojo.store.Memory",
		"dojo.store.Observable",
		"dojo.data.ObjectStore",
		"dojo.date.locale",
		"dojo.data.ItemFileReadStore",
		"dojo.data.ItemFileWriteStore",
		"dijit.Calendar",
		"dijit.ColorPalette",
		"dijit.ProgressBar",
		"dijit.TitlePane",
		"dijit.Tooltip",
		"dijit.Tree",
		"dijit.tree.dndSource",
		"dijit.tree.ForestStoreModel",
		"dijit.Menu",
		"dijit.MenuItem",
		"dijit.MenuBar",
		"dijit.MenuBarItem",
		"dijit.PopupMenuItem",
		"dijit.PopupMenuBarItem",
		"dijit.Editor",
		"dijit.InlineEditBox",
		"dijit.form.Button",
		"dijit.form.ComboButton",
		"dijit.form.DateTextBox",
		"dijit.form.DropDownButton",
		"dijit.form.Form",
		"dijit.form.FilteringSelect",
		"dijit.form.RadioButton",
		"dijit.form.TextBox",
		"dijit.form.ComboBox",
		"dijit.form.ValidationTextBox",
		"dijit.layout.AccordionContainer",
		"dijit.layout.AccordionPane",
		"dijit.layout.ContentPane",
		"dijit.layout.TabContainer",
		"dijit.layout.BorderContainer",
		"dijit.Dialog",
		"dojo.parser",
		"dijit.Dialog",
		"dojox.encoding.digests.SHA1",
		"dojox.form.FileInputAuto",
		"dojox.form.Uploader",
		"dojox.form.uploader.FileList",
		"dojox.form.uploader.plugins.IFrame",
		"dojox.grid.EnhancedGrid",
		"dojox.grid.enhanced.plugins.CellMerge",
		"dojox.grid.enhanced.plugins.DnD",
		"dojox.grid.enhanced.plugins.Menu",
		"dojox.grid.enhanced.plugins.Menu",
		"dojox.grid.enhanced.plugins.NestedSorting",
		"dojox.grid.enhanced.plugins.IndirectSelection",
		"dojox.grid.DataGrid",
		"dojox.json.ref",
		"dojox.layout.FloatingPane"
		]
	}
	],
 
	prefixes: [
	[ "dojo", "../dojo" ],
	[ "dijit", "../dijit" ],
	[ "dojox", "../dojox" ]
	]
}
Déjà je ne sais pas si je m'y prends bien (la doc est ancienne et dénuée d'exemples concrets.

Ensuite j'ai cherché un tuto ici : http://mikael-morvan.developpez.com/...pt/dojo/build/

J'ai donc fais une ébauche de build.xml comme il le dit mais lorsque j'exécute j'ai ça :
Code :
1
2
3
4
5
6
7
8
 
Buildfile: C:\Documents and Settings\username\My Documents\Aptana Studio 3 Workspace\test\build.xml
packaging:
     [java] js: Couldn't open file "./jslib/buildUtil.js".
     [java] js: uncaught JavaScript runtime exception: ReferenceError: "buildUtil" n'est pas défini
     [java] Java Result: 3
BUILD SUCCESSFUL
Total time: 437 milliseconds
Super vous me direz mais ce code est mensonger je n'ai aucune build nulle part de créée (en 437 ms tu m'étonnes !).

J'ai bien sûr également commencé par essayer un truc plus simple :
- mettre le custom.profile.js dans le répertoire util\buildscripts\profiles
- exécuter build.bat profile=custom (ou quoi que ce soit d'autre d'ailleurs)

Réponse :

Citation:
C:\Documents and Settings\username\Desktop\dojo\util\buildscripts>java -Xms256m -X
mx256m -cp ../shrinksafe/js.jar;../closureCompiler/compiler.jar;../shrinksafe/s
hrinksafe.jar org.mozilla.javascript.tools.shell.Main ../../dojo/dojo.js baseUr
l=../../dojo load=build profile=custom
running under rhino
js: "<eval'ed string>#1(Function)#1(eval)", line 125: uncaught JavaScript runtim
e exception: TypeError: Cannot read property "length" from undefined
at <eval'ed string>#1(Function)#1(eval):125
at <eval'ed string>#1(Function)#1(eval):153
at <eval'ed string>#1(Function)#1(eval):187
at <eval'ed string>#1(Function)#1(eval):124
at <eval'ed string>#1(Function)#1(eval):103
at <eval'ed string>#1(Function)#1(eval):84
Voilà donc là je sèche pour faire une build de cette bêta adaptée à mon projet (le moins de HTTPRequest possible pour un lancement rapide).

Merci à ceux qui me liront et qui m'aideront.

Charlie.
cfried est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 18h37.


 
 
 
 
Partenaires

Hébergement Web