2015-02-18 4 views
0

Я создаю пользовательскую сборку в DOJO. Мне нужно сохранить в файле сборки файл dojoConfig.js, который не будет изменен.Dojo Build - copyOnly не работает в профиле

На данный момент я пытаюсь: - исключить dojoConfig.js из сборки с помощью miniExclude, это работает отлично работают нормально - после того, как copyOnly к финальной сборке dojoConfig.js без сжатия, это не работает.

Мне нужно скопировать dojoConfig.js в файл сборки.

Любая идея, что не так в моем профиле?

miniExclude: function(o, e) { 
        return e in { 
         "aaa/aaa.profile": 1, 
         "aaa/dojoConfig": 1 
        } 
       }, 
       copyOnly: function(o, e) { 
        return e in { 
         "aaa/dojoConfig": 1 
        } 
       } 

var profile = function() { 
    return { 
     basePath: "../", 
     releaseDir: "dist", 
     releaseName: "build", 
     optimize: "closure", 
     action: "release", 
     layerOptimize: "closure", 
     copyTests: !1, 
     stripConsole: "all", 
     version: "0.0.0", 
     cssOptimize: "comments", 
     mini: !0, 
     copyTests: !1, 
     useSourceMaps: !1, 
     staticHasFeatures: { 
      "config-dojo-loader-catches": 0, 
      "config-tlmSiblingOfDojo": 0, 
      "dojo-amd-factory-scan": 0, 
      "dojo-combo-api": 0, 
      "dojo-config-api": 1, 
      "dojo-config-require": 0, 
      "dojo-debug-messages": 0, 
      "dojo-dom-ready-api": 1, 
      "dojo-firebug": 0, 
      "dojo-guarantee-console": 1, 
      "dojo-has-api": 1, 
      "dojo-inject-api": 1, 
      "dojo-loader": 1, 
      "dojo-log-api": 0, 
      "dojo-modulePaths": 0, 
      "dojo-moduleUrl": 0, 
      "dojo-publish-privates": 0, 
      "dojo-requirejs-api": 0, 
      "dojo-sniff": 1, 
      "dojo-sync-loader": 0, 
      "dojo-test-sniff": 0, 
      "dojo-timeout-api": 0, 
      "dojo-trace-api": 0, 
      "dojo-undef-api": 0, 
      "dojo-v1x-i18n-Api": 1, 
      "dojo-xhr-factory": 0, 
      dom: 1, 
      "host-browser": 1, 
      "extend-dojo": 1 
     }, 
     resourceTags: { 
      amd: function(o) { 
       return /\.js$/.test(o) 
      }, 
      miniExclude: function(o, e) { 
       return e in { 
        "aaa/test.profile": 1, 
        "aaa/dojoConfig": 1 
       } 
      }, 
      copyOnly: function(o, e) { 
       return e in { 
        "test/dojoConfig": 1 
       } 
      } 
     }, 
     packages: [{ 
      name: "dojo", 
      location: "dojo" 
     }, { 
      name: "test", 
      location: "test" 
     }], 
     layers: { 
      "dojo/dojo": { 
       include: ["dojo/dojo"], 
       customBase: !0, 
       boot: !0 
      }, 
      "aaa/aaa-shared": { 
       include: ["test/shared/bootstrapShared"], 
       customBase: !0, 
       boot: !1 
      }, 
      "aaa/aaa-content": { 
       include: ["test/content/bootstrap"], 
       customBase: !0, 
       boot: !1 
      }, 
      "aaa/aaa-builder": { 
       include: ["test/builder/bootstrapBuilder"], 
       customBase: !0, 
       boot: !1 
      } 
     } 
    } 
}(); 

ответ

1

Я не совсем уверен, если это ваша проблема, но miniExclude имеет преимущество над copyOnly, поэтому маркировка что-то, как и означает, что он не будет включен в выходной сборки по умолчанию (поскольку mini: true по умолчанию, и вы обычно не хотите его изменять). Если вы всегда хотите, чтобы файл копировался и не обрабатывался иным образом, просто включите его в copyOnly, а не miniExclude.

Смежные вопросы