我正在尝试使用以下内容生成新应用:
root@li184-76:/var/www/touch-2.3.1# sencha generate app NewApp ../newapp
但是,我得到以下内容:
Sencha Cmd v4.0.1.4
[INF] Workspace does not have framework touch at /var/www ... copying
[ERR] java.lang.NullPointerException
at com.sencha.util.Version.<init>(Version.java:36)
at com.sencha.command.generator.GeneratorCommands$WorkspaceCommand.getParameters(GeneratorCommands.java:130)
at com.sencha.command.BasePluginCommands$BasePluginCommand.doExecute(BasePluginCommands.java:23)
at com.sencha.command.generator.GeneratorCommands$WorkspaceCommand.execute(GeneratorCommands.java:89)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:622)
at com.sencha.util.MethodInvoker$Arguments.invoke(MethodInvoker.java:175)
at com.sencha.cli.Command.dispatch(Command.java:42)
at com.sencha.cli.Commands.dispatch(Commands.java:64)
at com.sencha.cli.AbstractCommand.dispatch(AbstractCommand.java:124)
at com.sencha.command.generator.GeneratorCommands$AppCommand.generateWorkspace(GeneratorCommands.java:397)
at com.sencha.command.generator.GeneratorCommands$AppCommand.execute(GeneratorCommands.java:240)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:622)
at com.sencha.util.MethodInvoker$Arguments.invoke(MethodInvoker.java:175)
at com.sencha.cli.Command.dispatch(Command.java:42)
at com.sencha.cli.Commands.dispatch(Commands.java:64)
at com.sencha.cli.Commands.dispatch(Commands.java:64)
at com.sencha.command.Sencha.dispatch(Sencha.java:80)
at com.sencha.command.Sencha.main(Sencha.java:148)
令人困惑的是我之前已经生成了应用程序。我不知道为什么我创造新的尝试失败了。
注意:
我尝试升级Sencha但它似乎确实具有欲望效果,如下所示:
root@li184-76:/var/www/touch-2.3.1# sencha upgrade
Sencha Cmd v4.0.1.45
[INF] Determining the latest version of Sencha Cmd
[INF] The latest version of Sencha Cmd is 4.0.2.67
[INF] Sencha Cmd 4.0.2.67 is already installed
更新
我尝试从TOUCH文件夹外部生成应用程序,但我收到一个关于SampleApp已经存在的奇怪错误。我在目标目录中没有任何名为SampleApp的内容。 数据如下:
root@li184-76:/var/www# sencha -sdk /var/www/touch-2.3.1/ generate app MyApp /var/www/myapp
Sencha Cmd v4.0.1.45
[ERR] Path /var/www/myapp is already a configured application named : SampleApp
[ERR] Path /var/www/myapp is already configured for application SampleApp
root@li184-76:/var/www#
答案 0 :(得分:5)
感谢arthurakay和Anand Gupta提供的帮助,我最终想出了问题。
发生的事情是在某些时候我通过尝试在同一个i:e / var / www目录中生成一个sencha应用程序来破坏我的/ var / www目录。这是造成所有破坏的错误。
幸运的是,我碰巧列出了所有隐藏文件并找到了一个 .sencha 文件夹,这就是为什么它一直在抱怨 SampleApp ,正如我的问题的更新部分所述
一旦我删除了.sencha文件夹和其他相关数据,事情就会超越其他挑战。
再次感谢您的所有投入。
答案 1 :(得分:2)
您发布的堆栈跟踪似乎没有太多信息...但我注意到您的命令
sencha generate app NewApp ../newapp
不包含 -sdk 标志。如果从里面一个Sencha Touch文件夹运行命令,那么你就不需要 -sdk 标志......但是如果你在文件系统的其他任何地方你需要告诉Sencha Cmd使用哪个SDK。
答案 2 :(得分:1)
我没有看到任何问题的原因。你可以尝试这个,而不是从sdk文件夹中运行命令,使用以下命令从外部运行它:sencha -sdk /path/to/sencha-touch-sdk generate app MyApp /path/to/www/myapp