运行生产版本时出现此错误:
[DBG]扫描文件夹中的插件:C:\ Users \ Jez \ bin \ Sencha \ Cmd \ 4.0.0.203 \ extensions \ sencha-io [ERR] java.lang.NullPointerException 在java.io.File。(未知来源) 在com.sencha.util.FileUtil.readFile(FileUtil.java:170) 在com.sencha.tools.compiler.jsb.projects.JsbBuilder.processBuild(JsbBuilder.java:29) 在com.sencha.command.build.JsbCommand.execute(JsbCommand.java:15) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) 在com.sencha.util.MethodInvoker $ Arguments.invoke(MethodInvoker.java:174) 在com.sencha.cli.Command.dispatch(Command.java:42) 在com.sencha.cli.Commands.dispatch(Commands.java:68) 在com.sencha.command.Sencha.dispatch(Sencha.java:81) 在com.sencha.command.Sencha.main(Sencha.java:149)
任何人都可以告诉我它意味着什么以及如何纠正它
Sencha Touch 2.3.0 Sencha Command 4.0.0.203
由于
答案 0 :(得分:2)
查看堆栈跟踪:
[DBG] Scanning for plugins in folder: C:\Users\Jez\bin\Sencha\Cmd\4.0.0.203\extensions\sencha-io
您的应用是否尝试使用Sencha IO?因为错误似乎表明Cmd正在寻找该位置的扩展......并且该包不存在(NullPointerException)。
假设我是对的,如果您正在运行 sencha app build ,我建议您删除应用中对Sencha IO的任何引用,以查看是否正常工作。然后,您可能必须更正Cmd查找Sencha IO软件包的路径。
答案 1 :(得分:0)
Sencha IO位于日志中提到的位置。这是一个JAR文件。我跑了,然后又尝试了一个版本。这似乎解决了这个问题。
答案 2 :(得分:0)
我注意到当你使用插件时出现这样的问题,即使我已经经历过这样的错误。因此,请确保您是否已使用插件并获取此错误然后放置。
执行以下步骤:
1>将你的插件文件放在=>内的 C:\ your_path \ project_folder \触摸\ SRC \ UX 强>
2 - ;现在打开 app.json 并将插件的路径写入其资源数组中,如下所示:
"resources": [
"resources/images",
"resources/icons",
"resources/startup",
"resources/data/",
"resources/css/",
"resources/fonts/",
"touch/src/ux/Ext.ux.Multiselect.js"
"touch/src/ux/TouchCalendar.js",
"touch/src/ux/TouchCalendarView.js",
"touch/src/ux/Ext.ux.TouchCalendarEvents.js",
"touch/src/ux/Ext.ux.TouchCalendarEventsBase.js",
"touch/src/ux/Ext.ux.TouchCalendarMonthEvents.js"
],
3>现在从以下路径 C:\ your_path \ project_folder.sencha \ app \ sencha.cfg
打开 sencha.cfg添加此路径 $ {app.dir} / touch / src / ux ,如代码所示
app.name=SS
app.framework=touch
app.classpath=${app.dir}/app.js,${app.dir}/app,${app.dir}/touch/src/ux
# this property specifies a comma separated list of paths containing
# resources to copy to the build directory
app.resource.paths=
app.build.dir=${workspace.build.dir}/${app.name}
app.framework.version=2.3.1.410
app.cmd.version=4.0.2.67
4>现在,从您的项目路径中运行终端 sencha app build 中的命令。