当我尝试构建我的包用于生产时,我在app.json中设置的自定义构建路径将被忽略。我在buildPath中得到了这个:
"buildPaths": {
"testing": "build/testing",
"production": "build/project/assets/www",
"package": "build/project/assets/www",
"native": "build/native",
},
当我在命令行中运行此命令时:
sencha app build production
命令行继续并结束,没有错误。但是当我查看我的构建路径时,我只看到一个名为:production的文件夹。为什么忽略这些构建路径?我假设当我设置这些值时,我的应用程序将进入build / project / assets / www文件夹。有什么问题?
Sencha touch version: 2.1.0-rc1
Sencha CMD version: V3.0.0.190
答案 0 :(得分:2)
buildPaths
中的 app.json
已被弃用(从Sencha Touch 2.1.0和Sencha Cmd v3.0.0.250开始不再有效)
您必须按./sencha/app/build-impl.xml
。
该文件由./build.xml
文件导入,因此如果可能,应在此最终文件中进行更改。
我不确切知道如何设置构建路径,因为我需要的东西略有不同。
我希望将打包的文件复制到一个目录中,然后由Phonegap使用。
我更改为build-impl.xml文件的是-after-build
声明,在其中写入copy
语句,如下所示:
<target name="-after-build">
<copy todir="../phonegap_project/www">
<fileset dir="${workspace.build.dir}/package"/>
</copy>
</target>
最终,如果您需要事先清空目标目录,可以添加
<delete dir="../phonegap_project/www"/>
在copy
陈述之前。
然后,我使用sencha app build package
命令构建。
答案 1 :(得分:1)
大家好我正在使用Sencha cmd v5 + 。
对我而言,项目根目录下build.xml的 标记下的以下行就像魅力一样。
<target name="-after-build">
<copy todir="../../gap/NAME_OF_MY_PROJECT_DIRECTORY/www">
<fileset dir="${workspace.build.dir}/../package"/>
</copy>
</target>
&#13;
抱歉我的英语不好,但我正在学习。
答案 2 :(得分:0)
我提出了一种解决方法。我尝试的第一件事是设置绝对路径,但这没有帮助(是的,我在Windows上)。
我需要更改路径的原因是:我在该文件夹中有一个eclipse(android / phonegap)项目。每次我建立sencha应用程序时,路径都是不正确的。所以我只是将eclipse项目中的loadurl改为:
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
super.loadUrl("file:///android_asset/www/production/index.html");
}
而不是:
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
super.loadUrl("file:///android_asset/www/index.html");
}
不是真正的解决方案,因为它仍然忽略了构建路径,但它不再是我的问题。