 <p>The problem is that the <code>InPageAppender</code> relies on log4javascript's own page load handling code to know whether it can start drawing itself. When loaded via RequireJS, the page is already loaded and log4javascript's page load handling code never runs.</p> <p>You can get around this by calling <code>log4javascript.setDocumentReady()</code>. The most sensible place to do this would seem to be in the shim <code>init()</code> function, but I'm no expert in RequireJS so there may be a better way:</p> <pre><code>requirejs.config({ shim: { 'log4javascript': { exports: 'log4javascript', init: function() { log4javascript.setDocumentReady(); } } } }); </code></pre>