新项目在构建 Android 时出错
Posted
技术标签:
【中文标题】新项目在构建 Android 时出错【英文标题】:New project has error building for Android 【发布时间】:2015-02-21 13:11:06 【问题描述】:我已经使用 MFP 制作了一些项目,但今天早上我创建了一个全新的项目:
mfp create feb21
cd feb21
mfp add hybrid
mfp add environment (selected iphone + android)
mfp start
在启动时,它运行,但随后在 iPhone 区域失败:
构建失败 /Applications/IBM/MobileFirst-CLI/mobilefirst-cli/node_modules/generator-worklight-server/lib/build.xml:128: 执行此行时发生以下错误: /Applications/IBM/MobileFirst-CLI/mobilefirst-cli/node_modules/generator-worklight-server/lib/build.xml:305: 执行此行时发生以下错误: /Applications/IBM/MobileFirst-CLI/mobilefirst-cli/node_modules/generator-worklight-server/lib/build.xml:315: 执行此行时发生以下错误: /Applications/IBM/MobileFirst-CLI/mobilefirst-cli/node_modules/generator-worklight-server/lib/build.xml:294: 构建应用程序失败: com.worklight.builder.exception.WorklightBuildException: com.worklight.builder.exception.WorklightBuildRuntimeException: 资源管理器 - 读取 info.plist 文件时出现问题 /Users/raymondcamden/Desktop/trash/feb21/apps/App1/iphone/native/Entitlements-Debug.plist (没有这样的文件或目录)嵌套异常: /Users/raymondcamden/Desktop/trash/feb21/apps/App1/iphone/native/Entitlements-Debug.plist (没有这样的文件或目录)
然后我又试了一次,太糟糕了,现在它在 Android 区域失败了:
构建失败 /Applications/IBM/MobileFirst-CLI/mobilefirst-cli/node_modules/generator-worklight-server/lib/build.xml:128: 执行此行时发生以下错误: /Applications/IBM/MobileFirst-CLI/mobilefirst-cli/node_modules/generator-worklight-server/lib/build.xml:305: 执行此行时发生以下错误: /Applications/IBM/MobileFirst-CLI/mobilefirst-cli/node_modules/generator-worklight-server/lib/build.xml:315: 执行此行时发生以下错误: /Applications/IBM/MobileFirst-CLI/mobilefirst-cli/node_modules/generator-worklight-server/lib/build.xml:294: 构建应用程序失败: com.worklight.builder.exception.WorklightBuildException: com.worklight.builder.exception.WorklightBuildRuntimeException: 资源管理器 - 读取 XML 文件时出错: /Users/raymondcamden/Desktop/trash/feb21/apps/App1/android/native/AndroidManifest.xml (没有这样的文件或目录)嵌套异常: /Users/raymondcamden/Desktop/trash/feb21/apps/App1/android/native/AndroidManifest.xml (没有这样的文件或目录)
多次重试后,我只得到这个区域的错误。我可以确认该文件确实不存在,但我不知道为什么。
【问题讨论】:
Ray 你能提供命令“mfp info”的输出吗,这将提供更多信息,例如JDK JAVA_HOME(应该是1.7)。您也可以尝试删除 App1/iphone/native 和 App1/android/native 的目录“native”。运行 mfp 构建,但这次处于调试模式,因此它会打印更多信息。 "mfp build -d" mfp 信息在这里:gist.github.com/cfjedimaster/15378b3d8320605c83e1 糟糕,在完成之前发送了评论。删除了本机文件夹,这里是 mfp build -d 的输出:gist.github.com/cfjedimaster/dc6b775e401d35fe4f95 作为仅供参考,我创建了另一个项目,执行与上面完全相同的命令行调用(好吧,我更改了名称),我得到了同样的错误。我在这里错误地使用了 CLI 吗?我的想法是:新项目。杂交种。我要支持 ios + Android。 【参考方案1】:如果您没有任何本机代码,则删除环境 - iPhone 和 android,然后重新添加。我有同样的问题,删除和添加环境就可以了。
【讨论】:
是通过 CLI 完成的吗?我没有看到这个命令。另外,上面的 Carlos 建议删除本机文件夹,我这样做了,但没有奏效。 通过 cli 完成。要移除环境,请参考这个答案:***.com/questions/27799492/…。它基本上只删除本机文件夹,但这对我有用。 这让我构建。不过要去尝试另一个处女项目。这让我很担心。【参考方案2】:当未知发生时,最后的资源是清理 mfp 环境。 至少对于 Mac 试试这个:
检查 mfp 测试服务器和分析服务是否正在运行并终止它们。 一种方法是重新启动计算机。
另一种是使用lsof查找进程ID(PID):
$ lsof -i :10080
COMMAND PID USER FD TYPE
java 70031 csantana23 171u IPv4 0xc20be7c0903a7517 0t0 TCP *:10080 (LISTEN)
$lsof -i :10777
COMMAND PID USER FD TYPE
java 70031 csantana23 6u IPv4 0xc20be7c0aee2c9f7 0t0 TCP *:10777 (LISTEN)
使用 lsof 输出的 PID 值杀死进程:
$ kill -9 70031
清理 MFP 测试服务器的临时目录:
$ rm -r $HOME/.ibm/mobilefirst
使用适用于 iOS 和 Android 的混合应用创建一个新项目:
$ mfp create MFProject
A MobileFirst Project was successfully created at /Users/csantana23/MFProject
$ cd MFProject/
$ mfp add hybrid App1
A new Hybrid App was added at /Users/csantana23/MFProject/apps/App1
$ cd apps/App1/
$ mfp add environment iphone,android
A new android Environment was added at /Users/csantana23/MFProject/apps/App1/android
A new iphone Environment was added at /Users/csantana23/MFProject/apps/App1/iphone
$ mfp start
Cannot find the server configuration. Creating a new MobileFirst test server.
Initializing MobileFirst Console.
Starting server worklight.
Server worklight started with process ID 70325.
$ mfp preview
希望这会有所帮助!
【讨论】:
以上是关于新项目在构建 Android 时出错的主要内容,如果未能解决你的问题,请参考以下文章
Android - 使用 apktool 将项目构建为 APK 文件时出错
使用 Android Studio 3.1 和 gradle 3.1.0 构建项目时出错
使用Android Studio 3.1和build构建项目时出错:gradle 3.1.0