Require.js Error: Load timeout for modules: backbone,jquerymobile

backbone.js, javascript, jquery, requirejs

Solution

Require.js has a Config option called waitSeconds. This may help.

RequireJS waitSeconds

Here's an example where waitSeconds is used:

requirejs.config({
    baseUrl: "scripts",
    enforceDefine: true,
    urlArgs: "bust=" + (new Date()).getTime(),
    waitSeconds: 200,
    paths: {
        "jquery": "libs/jquery-1.8.3",
        "underscore": "libs/underscore",
        "backbone": "libs/backbone"
    },
    shim: {
        "underscore": {
            deps: [],
            exports: "_"
        },
        "backbone": {
            deps: ["jquery", "underscore"],
            exports: "Backbone"
        },
    }
});

define(["jquery", "underscore", "backbone"],
    function ($, _, Backbone) {
        console.log("Test output");
        console.log("$: " + typeof $);
        console.log("_: " + typeof _);
        console.log("Backbone: " + typeof Backbone);
    }
);

Problem

I am trying to use r.js to optimize my code but I keep running to this error: Tracing dependencies for: init ``` Error: Load timeout for modules: backbone,jquerymobile ``` The command I am running is this: ``` $ java -classpath /Users/dixond/build-tools/rhino1_7R4/js.jar:/Users/dixond/build-tools/closurecompiler/compiler.jar org.mozilla.javascript.tools.shell.Main /Users/dixond/build-tools/r.js/dist/r.js -o /Users/dixond/Sites/omm_mobile/js/build.js ``` My build.js file looks like this: ``` ( { //appDir: "some/path/", baseUrl : ".", mainConfigFile : 'init.js', paths : { jquery : 'libs/jquery-1.8.3.min', backbone : 'libs/backbone.0.9.9', underscore : 'libs/underscore-1.4.3', json2 : 'libs/json2', jquerymobile : 'libs/jquery.mobile-1.2.0.min' }, packages : [], shim : { jquery : { exports : 'jQuery' }, jquerymobile : { deps : ['jquery'], exports : 'jQuery.mobile' }, underscore : { exports : '_' }, backbone : { deps : ['jquerymobile', 'jquery', 'underscore'], exports : 'Backbone' } }, keepBuildDir : true, locale : "en-us", optimize : "closure", skipDirOptimize : false, generateSourceMaps : false, normalizeDirDefines : "skip", uglify : { toplevel : true, ascii_only : true, beautify : true, max_line_length : 1000, defines : { DEBUG : ['name', 'false'] }, no_mangle : true }, uglify2 : {}, closure : { CompilerOptions : {}, CompilationLevel : 'SIMPLE_OPTIMIZATIONS', loggingLevel : 'WARNING' }, cssImportIgnore : null, inlineText : true, useStrict : false, pragmas : { fooExclude : true }, pragmasOnSave : { //Just an example excludeCoffeeScript : true }, has : { 'function-bind' : true, 'string-trim' : false }, hasOnSave : { 'function-bind' : true, 'string-trim' : false }, //namespace: 'foo', skipPragmas : false, skipModuleInsertion : false, optimizeAllPluginResources : false, findNestedDependencies : false, removeCombined : false, name : "init", out : "main-built.js", wrap : { start : "(function() {", end : "}());" }, preserveLicenseComments : true, logLevel : 0, cjsTranslate : true, useSourceUrl : true }) ``` And my init.js looks like this: ``` requirejs.config({ //libraries paths: { jquery: 'libs/jquery-1.8.3.min', backbone: 'libs/backbone.0.9.9', underscore: 'libs/underscore-1.4.3', json2 : 'libs/json2', jquerymobile: 'libs/jquery.mobile-1.2.0.min' }, //shimming enables loading non-AMD modules //define dependencies and an export object shim: { jquerymobile: { deps: ['jquery'], exports: 'jQuery.mobile' }, underscore: { exports: '_' }, backbone: { deps: ['jquerymobile', 'jquery', 'underscore', 'json2'], exports: 'Backbone' } } }); requirejs(["backbone",], function(Backbone) { //Execute code here }); ``` What am I doing wrong in this build process?

Original source

Related problems