1

我刚刚将我的应用程序升级到 Sencha Touch 2.1,现在我正在尝试构建它以用于生产。不幸的是,我收到以下错误消息:

Sencha Cmd v3.0.0.250
[DBG]       checking /Users/titouanvanbelle/Documents/workspace/app/sencha/.sencha/app for plugin.xml
[DBG]       checking /Users/titouanvanbelle/Documents/workspace/app/sencha/.sencha/workspace for plugin.xml
[DBG]       checking /Users/titouanvanbelle/bin/Sencha/Cmd/3.0.0.250/plugins/touch/current for plugin.xml
[DBG]       checking /Users/titouanvanbelle/bin/Sencha/Cmd/3.0.0.250 for plugin.xml
[DBG]       located plugin /Users/titouanvanbelle/Documents/workspace/app/sencha/.sencha/app/plugin.xml
[INF]       init-properties:
[INF]       init-sencha-command:
[INF]       init:
[INF]       -before-app-build:
[INF]       app-build-impl:
[DBG]       found sencha.cfg at /Users/titouanvanbelle/bin/Sencha/Cmd/3.0.0.250
[DBG]       found workspace at /Users/titouanvanbelle/Documents/workspace/app/sencha/.sencha/workspace
[DBG]       found app at /Users/titouanvanbelle/Documents/workspace/app/sencha/.sencha/app
[DBG]       loading framework config from /Users/titouanvanbelle/Documents/workspace/app/sencha/touch
[DBG]       found cmd at /Users/titouanvanbelle/Documents/workspace/app/sencha/touch/cmd
[DBG]       Checking for framework config overrides
[DBG]       resolving framework config overrides for 'touch'
[DBG]       Detected framework version 2.1.0.447
[DBG]       using framework config override '/Users/titouanvanbelle/bin/Sencha/Cmd/3.0.0.250/plugins/touch/current'
[INF]       production:
[INF]       -before-init-local:
[INF]       -init-local:
[INF]       -after-init-local:
[INF]       init-local:
[INF]       find-cmd:
[INF]       -before-init:
[INF]       -init:
[DBG]       Initialize Sencha Cmd with prefix = ''
[DBG]       found sencha.cfg at /Users/titouanvanbelle/bin/Sencha/Cmd/3.0.0.250
[DBG]       found workspace at /Users/titouanvanbelle/Documents/workspace/app/sencha/.sencha/workspace
[DBG]       found app at /Users/titouanvanbelle/Documents/workspace/app/sencha/.sencha/app
[DBG]       loading framework config from /Users/titouanvanbelle/Documents/workspace/app/sencha/touch
[DBG]       found cmd at /Users/titouanvanbelle/Documents/workspace/app/sencha/touch/cmd
[DBG]       Checking for framework config overrides
[DBG]       resolving framework config overrides for 'touch'
[DBG]       Detected framework version 2.1.0.447
[DBG]       using framework config override '/Users/titouanvanbelle/bin/Sencha/Cmd/3.0.0.250/plugins/touch/current'
[DBG]       adding /Users/titouanvanbelle/bin/Sencha/Cmd/3.0.0.250/sencha.jar to classpath
[INF]       -after-init:
[INF]       init:
[INF]       -before-build:
[INF]       sass:
[INF]       -before-sass:
[INF]       -sass:
[INF]       [shellscript] identical ../css/app.css 
[INF]       -after-sass:
[INF]       page:
[INF]       -before-page:
[INF]       -page:
[INF]       building application
[INF]       Deploying your application to /Users/titouanvanbelle/Documents/workspace/app/sencha/build/sencha/production
[DBG]       copying all assets
[DBG]       copying file /Users/titouanvanbelle/Documents/workspace/app/sencha/app.js
[INF]       Copied app.js
[DBG]       copying file /Users/titouanvanbelle/Documents/workspace/app/sencha/resources/css/app.css
[INF]       Copied resources/css/app.css
[DBG]       copying all extras
[DBG]       copying from /Users/titouanvanbelle/Documents/workspace/app/sencha/resources/images to /Users/titouanvanbelle/Documents/workspace/app/sencha/build/sencha/production/resources/images
[INF]       Copied /Users/titouanvanbelle/Documents/workspace/app/sencha/resources/images
[DBG]       copying from /Users/titouanvanbelle/Documents/workspace/app/sencha/resources/icons to /Users/titouanvanbelle/Documents/workspace/app/sencha/build/sencha/production/resources/icons
[INF]       Copied /Users/titouanvanbelle/Documents/workspace/app/sencha/resources/icons
[DBG]       copying from /Users/titouanvanbelle/Documents/workspace/app/sencha/resources/startup to /Users/titouanvanbelle/Documents/workspace/app/sencha/build/sencha/production/resources/startup
[INF]       Copied /Users/titouanvanbelle/Documents/workspace/app/sencha/resources/startup
[INF]       Resolving your application dependencies (file:////Users/titouanvanbelle/Documents/workspace/app/sencha/index.html)
[DBG]       found sencha.cfg at /Users/titouanvanbelle/bin/Sencha/Cmd/3.0.0.250
[DBG]       found workspace at /Users/titouanvanbelle/Documents/workspace/app/sencha/.sencha/workspace
[DBG]       found app at /Users/titouanvanbelle/Documents/workspace/app/sencha/.sencha/app
[DBG]       loading framework config from /Users/titouanvanbelle/Documents/workspace/app/sencha/touch
[DBG]       found cmd at /Users/titouanvanbelle/Documents/workspace/app/sencha/touch/cmd
[DBG]       Checking for framework config overrides
[DBG]       resolving framework config overrides for 'touch'
[DBG]       Detected framework version 2.1.0.447
[DBG]       using framework config override '/Users/titouanvanbelle/bin/Sencha/Cmd/3.0.0.250/plugins/touch/current'
[INF]       Compiling app.js and dependencies
[DBG]       running compiler with options : 'compile --ignore=src/locale,src/platform,auth2/Auth.js,scroller/Infinite.js --options=debug:false,logger:no,minVersion:3,product:touch union --recursive --file=app.js and concatenate -out=/Users/titouanvanbelle/Documents/workspace/app/sencha/build/sencha/production/app.js'
[DBG]       found sencha.cfg at /Users/titouanvanbelle/bin/Sencha/Cmd/3.0.0.250
[DBG]       found workspace at /Users/titouanvanbelle/Documents/workspace/app/sencha/.sencha/workspace
[DBG]       found app at /Users/titouanvanbelle/Documents/workspace/app/sencha/.sencha/app
[DBG]       loading framework config from /Users/titouanvanbelle/Documents/workspace/app/sencha/touch
[DBG]       found cmd at /Users/titouanvanbelle/Documents/workspace/app/sencha/touch/cmd
[DBG]       Checking for framework config overrides
[DBG]       resolving framework config overrides for 'touch'
[DBG]       Detected framework version 2.1.0.447
[DBG]       using framework config override '/Users/titouanvanbelle/bin/Sencha/Cmd/3.0.0.250/plugins/touch/current'
[DBG]       java.lang.NoSuchMethodError
[ERR]       BUILD FAILED
[ERR]       com.sencha.exceptions.BasicException: The following error occurred while executing this line:
[ERR]       /Users/titouanvanbelle/Documents/workspace/app/sencha/.sencha/app/build-impl.xml:120: javax.script.ScriptException: sun.org.mozilla.javascript.internal.WrappedException: Wrapped com.sencha.exceptions.BasicException: java.lang.NoSuchMethodError: org.mozilla.javascript.CompilerEnvirons.setRecordingComments(Z)V (<Unknown source>#461) in <Unknown source> at line number 461
[ERR]           at com.sencha.exceptions.BasicException.wrap(BasicException.java:43)
[ERR]           at com.sencha.cli.Command.dispatch(Command.java:104)
[ERR]           at com.sencha.cli.Commands.dispatch(Commands.java:49)
[ERR]           at com.sencha.cli.AbstractCommand.dispatch(AbstractCommand.java:182)
[ERR]           at com.sencha.ant.SenchaCommandTask.doExecute(SenchaCommandTask.java:58)
[ERR]           at com.sencha.ant.BaseAntTask.execute(BaseAntTask.java:22)
[ERR]           at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:291)
[ERR]           at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[ERR]           at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
[ERR]           at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
[ERR]           at java.lang.reflect.Method.invoke(Method.java:597)
[ERR]           at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106)
[ERR]           at org.apache.tools.ant.Task.perform(Task.java:348)
[ERR]           at org.apache.tools.ant.Target.execute(Target.java:392)
[ERR]           at org.apache.tools.ant.Target.performTasks(Target.java:413)
[ERR]           at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1399)
[ERR]           at org.apache.tools.ant.Project.executeTarget(Project.java:1368)
[ERR]           at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41)
[ERR]           at org.apache.tools.ant.Project.executeTargets(Project.java:1251)
[ERR]           at com.sencha.ant.AntRunner.run(AntRunner.java:156)
[ERR]           at com.sencha.ant.AntRunner.run(AntRunner.java:72)
[ERR]           at com.sencha.command.BasePluginCommands$BasePluginCommand.run(BasePluginCommands.java:87)
[ERR]           at com.sencha.command.BasePluginCommands$BasePluginCommand.run(BasePluginCommands.java:91)
[ERR]           at com.sencha.command.BasePluginCommands$BaseNamePathCommand.run(BasePluginCommands.java:135)
[ERR]           at com.sencha.command.app.AppCommands$BuildCommand.execute(AppCommands.java:106)
[ERR]           at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[ERR]           at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
[ERR]           at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
[ERR]           at java.lang.reflect.Method.invoke(Method.java:597)
[ERR]           at com.sencha.cli.Command.dispatch(Command.java:78)
[ERR]           at com.sencha.cli.Commands.dispatch(Commands.java:49)
[ERR]           at com.sencha.cli.Commands.dispatch(Commands.java:49)
[ERR]           at com.sencha.command.Sencha.main(Sencha.java:71)
[ERR]       Caused by: /Users/titouanvanbelle/Documents/workspace/app/sencha/.sencha/app/build-impl.xml:126: The following error occurred while executing this line:
[ERR]       /Users/titouanvanbelle/Documents/workspace/app/sencha/.sencha/app/build-impl.xml:120: javax.script.ScriptException: sun.org.mozilla.javascript.internal.WrappedException: Wrapped com.sencha.exceptions.BasicException: java.lang.NoSuchMethodError: org.mozilla.javascript.CompilerEnvirons.setRecordingComments(Z)V (<Unknown source>#461) in <Unknown source> at line number 461
[ERR]           at org.apache.tools.ant.ProjectHelper.addLocationToBuildException(ProjectHelper.java:551)
[ERR]           at org.apache.tools.ant.taskdefs.Ant.execute(Ant.java:444)
[ERR]           at org.apache.tools.ant.taskdefs.CallTarget.execute(CallTarget.java:105)
[ERR]           at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:291)
[ERR]           at sun.reflect.GeneratedMethodAccessor8.invoke(Unknown Source)
[ERR]           at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
[ERR]           at java.lang.reflect.Method.invoke(Method.java:597)
[ERR]           at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106)
[ERR]           at org.apache.tools.ant.Task.perform(Task.java:348)
[ERR]           at org.apache.tools.ant.Target.execute(Target.java:392)
[ERR]           at org.apache.tools.ant.Target.performTasks(Target.java:413)
[ERR]           at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1399)
[ERR]           at org.apache.tools.ant.Project.executeTarget(Project.java:1368)
[ERR]           at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41)
[ERR]           at org.apache.tools.ant.Project.executeTargets(Project.java:1251)
[ERR]           at com.sencha.ant.AntRunner.run(AntRunner.java:156)
[ERR]           at com.sencha.ant.AntRunner.run(AntRunner.java:80)
[ERR]           at com.sencha.command.ant.AntCommand.execute(AntCommand.java:75)
[ERR]           at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[ERR]           at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
[ERR]           at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
[ERR]           at java.lang.reflect.Method.invoke(Method.java:597)
[ERR]           at com.sencha.cli.Command.dispatch(Command.java:78)
[ERR]           ... 31 more
[ERR]       Caused by: /Users/titouanvanbelle/Documents/workspace/app/sencha/.sencha/app/build-impl.xml:120: javax.script.ScriptException: sun.org.mozilla.javascript.internal.WrappedException: Wrapped com.sencha.exceptions.BasicException: java.lang.NoSuchMethodError: org.mozilla.javascript.CompilerEnvirons.setRecordingComments(Z)V (<Unknown source>#461) in <Unknown source> at line number 461
[ERR]           at org.apache.tools.ant.util.ReflectUtil.toBuildException(ReflectUtil.java:183)
[ERR]           at org.apache.tools.ant.util.ReflectUtil.throwBuildException(ReflectUtil.java:166)
[ERR]           at org.apache.tools.ant.util.ReflectUtil.invoke(ReflectUtil.java:110)
[ERR]           at org.apache.tools.ant.util.ReflectWrapper.invoke(ReflectWrapper.java:81)
[ERR]           at org.apache.tools.ant.util.optional.JavaxScriptRunner.evaluateScript(JavaxScriptRunner.java:103)
[ERR]           at org.apache.tools.ant.util.optional.JavaxScriptRunner.executeScript(JavaxScriptRunner.java:67)
[ERR]           at org.apache.tools.ant.taskdefs.optional.script.ScriptDef.executeScript(ScriptDef.java:350)
[ERR]           at org.apache.tools.ant.taskdefs.optional.script.ScriptDefBase.execute(ScriptDefBase.java:50)
[ERR]           at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:291)
[ERR]           at sun.reflect.GeneratedMethodAccessor8.invoke(Unknown Source)
[ERR]           at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
[ERR]           at java.lang.reflect.Method.invoke(Method.java:597)
[ERR]           at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106)
[ERR]           at org.apache.tools.ant.Task.perform(Task.java:348)
[ERR]           at org.apache.tools.ant.Target.execute(Target.java:392)
[ERR]           at org.apache.tools.ant.Target.performTasks(Target.java:413)
[ERR]           at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1399)
[ERR]           at org.apache.tools.ant.helper.SingleCheckExecutor.executeTargets(SingleCheckExecutor.java:38)
[ERR]           at org.apache.tools.ant.Project.executeTargets(Project.java:1251)
[ERR]           at org.apache.tools.ant.taskdefs.Ant.execute(Ant.java:442)
[ERR]           ... 52 more
[ERR]       Caused by: javax.script.ScriptException: sun.org.mozilla.javascript.internal.WrappedException: Wrapped com.sencha.exceptions.BasicException: java.lang.NoSuchMethodError: org.mozilla.javascript.CompilerEnvirons.setRecordingComments(Z)V (<Unknown source>#461) in <Unknown source> at line number 461
[ERR]           at com.sun.script.javascript.RhinoScriptEngine.eval(RhinoScriptEngine.java:156)
[ERR]           at com.sun.script.javascript.RhinoScriptEngine.eval(RhinoScriptEngine.java:170)
[ERR]           at javax.script.AbstractScriptEngine.eval(AbstractScriptEngine.java:247)
[ERR]           at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[ERR]           at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
[ERR]           at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
[ERR]           at java.lang.reflect.Method.invoke(Method.java:597)
[ERR]           at org.apache.tools.ant.util.ReflectUtil.invoke(ReflectUtil.java:108)
[ERR]           ... 69 more
[ERR]       Total time: 21 seconds
[ERR]       com.sencha.exceptions.BasicException: The following error occurred while executing this line:
/Users/titouanvanbelle/Documents/workspace/app/sencha/.sencha/app/build-impl.xml:120: javax.script.ScriptException: sun.org.mozilla.javascript.internal.WrappedException: Wrapped com.sencha.exceptions.BasicException: java.lang.NoSuchMethodError: org.mozilla.javascript.CompilerEnvirons.setRecordingComments(Z)V (<Unknown source>#461) in <Unknown source> at line number 461

我设法通过启用 V2 兼容模式来编译应用程序,如下所述:

http://docs.sencha.com/touch/2-1/#!/guide/command_app-section-3

那么在没有启用此模式的情况下无法编译的原因可能是什么?

我刚刚浏览了我所有的观点并仔细检查了需求声明,它们都在那里。此外,我不会覆盖我的应用程序中的任何组件。

更新

它在我的一位同事的 mac 上编译没有错误。我在山狮上,这是我的java -version

java version "1.6.0_37"
Java(TM) SE Runtime Environment (build 1.6.0_37-b06-434-11M3909)
Java HotSpot(TM) 64-Bit Server VM (build 20.12-b01-434, mixed mode)
4

4 回答 4

4

看起来有一个指向过时版本的系统环境变量(也许是 rhino vers)

于 2012-12-04T21:08:33.657 回答
3

它可能正在尝试使用应用程序构建进行 sass 构建(2.1 现在可以这样做),您需要安装 compass 才能使其工作,但有时即使安装了它也不会。我发现最简单的方法是自己构建 sass 并添加:

skip.sass=1

到 touch\cmd 中的sencha.cfg文件。

将它添加到长虚线之前,即第一部分。

看看是否有帮助:)

于 2012-11-29T12:47:13.123 回答
1

我正在运行 Sencha Touch 2.1,我遇到了同样的问题,但安装了 compass gem 并且它工作正常,没有弄乱 rhino。

刚刚从命令行运行 gem install compass 。

于 2013-02-19T00:59:56.787 回答
0

这些错误是由解决依赖关系时的错误引起的。你实际上链接到解释。确保在任何地方都定义了您的需求/使用语句。

默认使用新的 Sencha Cmd 编译器来确定依赖关系。与以前的版本不同,编译器通过处理源代码(应用程序和框架)来确定依赖关系。在某些情况下,这可能会导致缺少依赖项,即在以前的版本中自动检测到但编译器未检测到的依赖项。

在这种情况下,理想的解决方案是添加缺少的 requires 语句来解决问题。这可能包括将覆盖切换到新的命名表单,例如:

Ext.define('MyApp.patches.foo.Bar', {
   override: 'Ext.foo.Bar',
   ...
});

这使得它们的名称需要覆盖,因此编译器可以按正确的顺序处理它们。

如果需要推迟这项工作,您可以启用 V2 兼容模式(基于通过无头 WebView 内的文件系统协议启动应用程序以提取依赖项)。

于 2012-11-21T15:49:26.397 回答