我刚刚将我的 Apache Cordova 项目升级到 Cordova 3.2,同时将所有内容更改为 cordova CLI 项目。一切正常,直到我在我的 Android 应用程序中添加了对另一个第三方项目的引用。 Android 应用程序仍然适用于该子项目,但是,现在当我尝试从命令行运行“cordova build”时,出现以下错误:
Preparing android project
Compiling app on platform "android" via command "/<path-to-my-cordova-project>/platforms/android/cordova/build"
[Error: An error occurred while building the android project.Error executing "ant clean -f /<path-to-my-cordova-project>/platforms/android/build.xml":
BUILD FAILED
/Applications/adt-bundle-mac-x86_64/sdk/tools/ant/build.xml:471: Invalid file: /<path-to-my-android-sub-project>/build.xml
Android子项目使用maven,而不是ant,所以没有build.xml文件。但出于某种原因,Cordova 希望存在一个……我尝试在子项目中放置一个虚拟的 build.xml 文件,但 Cordova 也不喜欢那样。
我知道 Cordova 项目通常没有子项目,因为所有应用程序代码通常只是 html/javascript/css。那么,子项目的概念仅仅是 Cordova CLI 还不支持的东西吗?有没有办法让 CLI 忽略子项目?
最佳答案
您可以使用 android update project
命令创建一个 cordova 的 ant 会喜欢的 build.xml
文件。如果子项目有很多 maven 解析的依赖项,那么您可能会以多步骤构建结束,您首先解析子项目的依赖项,然后再进行 cordova 构建。
有关子项目的更多详细信息会有所帮助。
关于android - 尝试在具有子项目引用的 Android 项目上使用 "cordova build"时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20571408/