YuiCompressorTask: "не удается найти пакет для базового имени org.от Mozilla.Яваскрипт.ресурсы.Сообщения, locale en US"
Я использую YuiCompressorTask (последняя версия) в моем проекте в течение очень долгого времени без проблем. После обновления до пакета java 1.7 Oracle на OSX, hwoever, он ломается со следующим исключением (это для файла javascript; он отлично работает с файлом css):
[yuiCompress] java.lang.reflect.InvocationTargetException
[yuiCompress] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[yuiCompress] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
[yuiCompress] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
[yuiCompress] at java.lang.reflect.Method.invoke(Method.java:601)
[yuiCompress] at com.yahoo.platform.yui.compressor.Bootstrap.main(Bootstrap.java:21)
[yuiCompress] at ww.ant.YuiCompressorTask.execute(YuiCompressorTask.java:40)
[yuiCompress] at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:291)
[yuiCompress] at sun.reflect.GeneratedMethodAccessor4.invoke(Unknown Source)
[yuiCompress] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
[yuiCompress] at java.lang.reflect.Method.invoke(Method.java:601)
[yuiCompress] at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106)
[yuiCompress] at org.apache.tools.ant.Task.perform(Task.java:348)
[yuiCompress] at org.apache.tools.ant.Target.execute(Target.java:390)
[yuiCompress] at org.apache.tools.ant.Target.performTasks(Target.java:411)
[yuiCompress] at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1399)
[yuiCompress] at org.apache.tools.ant.Project.executeTarget(Project.java:1368)
[yuiCompress] at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41)
[yuiCompress] at org.apache.tools.ant.Project.executeTargets(Project.java:1251)
[yuiCompress] at org.apache.tools.ant.Main.runBuild(Main.java:809)
[yuiCompress] at org.apache.tools.ant.Main.startAnt(Main.java:217)
[yuiCompress] at org.apache.tools.ant.launch.Launcher.run(Launcher.java:280)
[yuiCompress] at org.apache.tools.ant.launch.Launcher.main(Launcher.java:109)
[yuiCompress] Caused by: java.util.MissingResourceException: Can't find bundle for base name org.mozilla.javascript.resources.Messages, locale en_US
[yuiCompress] at java.util.ResourceBundle.throwMissingResourceException(ResourceBundle.java:1499)
[yuiCompress] at java.util.ResourceBundle.getBundleImpl(ResourceBundle.java:1322)
[yuiCompress] at java.util.ResourceBundle.getBundle(ResourceBundle.java:796)
[yuiCompress] at org.mozilla.javascript.ScriptRuntime.getMessage(ScriptRuntime.java:3316)
[yuiCompress] at org.mozilla.javascript.ScriptRuntime.getMessage0(ScriptRuntime.java:3273)
[yuiCompress] at org.mozilla.javascript.Parser.addError(Parser.java:121)
[yuiCompress] at org.mozilla.javascript.TokenStream.getToken(TokenStream.java:773)
[yuiCompress] at org.mozilla.javascript.Parser.peekToken(Parser.java:161)
[yuiCompress] at org.mozilla.javascript.Parser.parse(Parser.java:361)
[yuiCompress] at org.mozilla.javascript.Parser.parse(Parser.java:337)
[yuiCompress] at com.yahoo.platform.yui.compressor.JavaScriptCompressor.parse(JavaScriptCompressor.java:312)
[yuiCompress] at com.yahoo.platform.yui.compressor.JavaScriptCompressor.<init>(JavaScriptCompressor.java:533)
[yuiCompress] at com.yahoo.platform.yui.compressor.YUICompressor.main(YUICompressor.java:131)
[yuiCompress] ... 22 more
Я могу вернуться к Java 1.6 от Apple, и он отлично работает. Мой вопрос в том, есть ли способ обойти это? Я действительно больше не могу продолжать 1.6.
3 ответов
немного старый вопрос, но сегодня я запускаю ту же ошибку.
в моем случае проблема заключалась в синтаксической ошибке в моем JavaScript, я забыл a } после операции вырезания и вставки.
Я использовал этот онлайн-инструмент (http://refresh-sf.com/yui/) для сжатия JS-файла, и он вернул некоторую странную ошибку, но более полезную, чем стек исключений java...
надеюсь, что это поможет...
Я решил переключиться на компилятор закрытия Google, отказавшись от последних компонентов YUI, которые я использовал на протяжении многих лет. Я получаю тонны предупреждений в журнале сборки, но это работает. вздох
действительно старый вопрос, но если кто-то все еще использует Yui-compress, у меня была та же ошибка, и оказалось, что yui-compress не любит конечную запятую после аргументов в вызовах функций. Например:
foo(a, b, c);
это нормально, но
foo(a, b, c,);
нет.