Мой вопрос, вначале похожий на , этот , кажется, более простой вопрос - и, возможно, сигнализирует об ошибке в системе сборки. Я создал специальную сборку для своего приложения для додзё. Сейчас я создаю только один слой, вот как выглядит сценарий / объект профиля:
dependencies = {
stripConsole: "all",
action: "release",
optimize: "shrinksafe",
releaseName: "myProject",
// list of locales we want to expose
localeList: "en-gb,en-us,de-de",
layers: [
{
// Name: a relative path from the dojo.js in the desination directory.
name: "../../myProject.js",
dependencies: [
"myPackage.MyDataStore",
// MyWidget depends on a few other widgets, and has its own
// translation files.
"myPackage.MyWidget"
]
}
],
prefixes: [
// These paths are relative to the location of dojo.js
[ "dijit", "../dijit" ],
[ "dojox", "../dojox" ],
[ "myPackage", "../../../src/myPackage" ]
]
}
Когда я запускаю сборку с таким описанием, она выводит файлы в следующей структуре каталогов:
release/
release/myProject/
release/myProject/dijit/
... dijit ...
release/myProject/dojo/
... dojo ...
release/myProject/dojox/
... dojox ...
release/myProject/myPackage/
... my custom package ...
release/nls/
myProject_en-us.js
myProject_de.js
etc..
../myproject.js
../myProject.js.uncompressed.js
Наконец, на моей тестовой HTML-странице - я получил следующее:
Но, к сожалению, Firebug выплевывает мне это:
Bundle not found: MyWidget in myPackage , locale=en-us
Я проследил часть кода, ведущего к вышеуказанной ошибке, и похоже, что dojo.i18n. Вызов _preloadLocalizations ()
в конце файла на самом деле не загружается в правильный файл nls из ./ release / nls
.
Есть идеи, как исправить это, не прибегая к ручному включению файлов nls с тегами
?