Mein Projekt verwendet das Text-Plugin für requirejs, und obwohl das Plugin richtig funktioniert, funktioniert der Optimierer nicht. Dies ist ein Test meiner Anwendungsdatei:
define([
'jquery',
'underscore',
//'ui/js/form/LoginForm'
'text!core/ui/text/form/LoginForm.txt'
], function($, _, template) {
var initialize = function() {
}
return {
initialize : initialize
};
});
Dies ist die Konfiguration:
require.config({
paths : {
jquery : 'lib/jquery/jquery',
underscore : 'lib/underscore/underscore',
text : 'lib/require/text'
},
shim: {
underscore: {
exports: '_'
}
}
});
require([
'app',
], function(App) {
App.initialize();
});
Und das ist die Build-Konfiguration:
({
baseUrl: '../scripts',
mainConfigFile: '../scripts/main.js',
name: '../scripts/main',
out: '../scripts/concatenated-modules.js',
optimize: 'none',
optimizeAllPluginResources: true
})
Ich weiß zweifelsfrei, dass die Pfade im Projekt korrekt sind, da die Anwendung selbst funktioniert. Beim Erstellen erhalte ich jedoch Folgendes:
C:\wamp\www\build>java -classpath js.jar org.mozilla.javascript.too
ls.shell.Main r.js -o build.js
Tracing dependencies for: ../scripts/main
InternalError: The choice of Java constructor append matching JavaScript argumen
t types (null) is ambiguous; candidate constructors are:
class java.lang.AbstractStringBuilder append(java.lang.StringBuffer)
class java.lang.AbstractStringBuilder append(java.lang.String)
class java.lang.AbstractStringBuilder append(java.lang.Object)
class java.lang.AbstractStringBuilder append(java.lang.CharSequence)
class java.lang.AbstractStringBuilder append(char[]) (r.js#21883(eval)#307)
In module tree:
../scripts/main
app
text
InternalError: The choice of Java constructor append matching JavaScript argumen
t types (null) is ambiguous; candidate constructors are:
class java.lang.AbstractStringBuilder append(java.lang.StringBuffer)
class java.lang.AbstractStringBuilder append(java.lang.String)
class java.lang.AbstractStringBuilder append(java.lang.Object)
class java.lang.AbstractStringBuilder append(java.lang.CharSequence)
class java.lang.AbstractStringBuilder append(char[]) (r.js#21883(eval)#307)
In module tree:
../scripts/main
app
text
Meine Vermutung ist, dass der Optimierer nicht in der Lage war zu erkennen, dass die 'text!core/ui/text/form/LoginForm.txt'
Text-Abhängigkeit ein Plugin verwendet.
Was ich wollte, war Inline-Ressourcen, ich habe nach den Tutorials auf den Buchstaben und ich habe alle die neuesten Versionen aller Bibliotheken.