Ruby Sencha Cmd v4.0.2.67创建后台进程失败

Ruby Sencha Cmd v4.0.2.67创建后台进程失败,ruby,extjs,sass,extjs4.2,sencha-cmd,Ruby,Extjs,Sass,Extjs4.2,Sencha Cmd,我有一个单页ExtJS应用程序,它是使用Sencha命令v4.0.2.67生成的。我正在尝试使用Sencha命令v4.0.2.67和以下命令进行构建 当构建移动到步骤时,编译sassSencha Cmd v4.0.2.67失败: Failed creating background process Sencha Cmd v4.0.2.67输出: [INF] -compile-sass: [INF] writing sass content to /build/DevOps/production

我有一个单页ExtJS应用程序,它是使用Sencha命令v4.0.2.67生成的。我正在尝试使用Sencha命令v4.0.2.67和以下命令进行构建

当构建移动到步骤时,编译sassSencha Cmd v4.0.2.67失败:

Failed creating background process
Sencha Cmd v4.0.2.67输出:

[INF] -compile-sass:
[INF] writing sass content to /build/DevOps/production/DevOps-all.scss
[INF] appending sass content to /build/DevOps/production/DevOps-all.scss
[INF] appending sass content to /build/DevOps/production/DevOps-all.scss
[INF] executing compass using system installed ruby runtime
[ERR]
[ERR] BUILD FAILED
[ERR] com.sencha.exceptions.ExProcess: Failed creating background process
[ERR]
[ERR] Total time: 16 seconds
[ERR] The following error occurred while executing this line:
.sencha/app/build-impl.xml:273: The following error occurred while executing this line:
.sencha/app/sass-impl.xml:127: The following error occurred while executing this line:
.sencha/app/sass-impl.xml:138: com.sencha.exceptions.ExProcess: Failed creating background process
环境:

  • Sencha Cmd v4.0.2.67
  • ExtJS 4.2.1
  • Ruby 1.9.3(使用RVM)
  • Sass 3.2.14(媒体标记)
  • 罗盘0.12.3(阿尔尼拉姆)
项目:

最初的项目是使用Sencha Cmd v3.1.2.342生成的,后来引入了Sencha Cmd v4.0.2.67。我们通过记录在案的升级过程升级Sencha Cmd:

$ sencha upgrade --check
$ sencha upgrade
然后,为了使用由以前版本生成的应用程序生成的新版本Sencha Cmd,我们在应用程序目录中运行以下命令:

$ sencha app upgrade --noframework
有一些变化,Sencha称之为合并。主要在app.js和.sencha/文件夹中。关于如何解决这些问题,输出已经足够详细了。我们就是这么做的,在解决合并问题后,应用程序中的一切都正常运行,这就是我们发现构建无法工作的地方。升级后的主要问题是SASS和COMPASS

您可以自行运行特定任务,在本例中为sass步骤,使用sencha-d ant sass以获得更好的错误输出,而无需所有其他步骤:

$ sencha -d ant sass

这就是我们在创建后台进程失败时看到的生成错误。

问题的根源是build.properties文件以及对Sencha Cmd v3.1.2.342和v4.0.2.67之间文件中属性的更改。该文件位于项目根目录中:

.sencha/app/build.properties
通过清除build.properties中的所有自定义属性,我们能够成功运行刷新和生成命令:

$ sencha app refresh 
$ sencha app build 
问题的根源是我们的项目是由Sencha Cmd v3.1.2.342生成的。当我们升级到Sencha Cmd v4.0.2.67时,项目经历了升级过程。文件格式和属性已更改。Sencha Cmd v3.1.2.342和某些路径使用的旧属性在Sencha Cmd v4.0.2.67中不再存在。升级过程中的合并过程尽最大努力保留旧属性;即使他们把东西弄坏了。破坏建筑

我建议使用Sencha Cmd v4.0.2.67创建一个示例项目,并对生成被破坏的项目执行示例项目build.properties文件的差异。我们为输出目录、sas和CSS路径提供了大约70行不再有效的自定义属性

$ sencha app refresh 
$ sencha app build