此bounty已结束。回答此问题可获得+50声望奖励。奖励宽限期将在23小时后结束。Simon希望吸引更多人关注此问题。
我用46号世博会。
我想改变一些配置在我的AndroidManifest
,所以我运行一个npx expo prebuild
,生成一个android文件夹没有错误。
但是我的eas build
不再工作了(如果我不运行prebuild
的话)。
我得到这个错误:
Failed to find 'build.gradle' file for project: /home/expo/workingdir/build/android/app.
我错过了什么吗?
3条答案
按热度按时间gojuced71#
要使用通过运行npx expo prebuild生成的android文件夹,您需要使用eas build -p android命令并指定--non-interactive和--config选项。--non-interactive标志允许您在不提示任何输入的情况下进行构建,--config标志允许您指定app.json文件的路径,该文件应该位于prebuild生成的android文件夹中。
以下是如何使用这些选项的示例:
请注意,使用Expo运行预构建和构建Android应用可能需要进行其他设置,例如设置密钥库和对应用进行签名。有关构建和发布应用的详细信息,请参阅Expo文档。
mcvgt66p2#
运行npx expo prebuild似乎会导致Expo项目出现一些问题。Expo使用Android Gradle构建系统来构建和运行Android项目,因此您看到的build.gradle文件错误表明构建配置可能存在问题。
此问题的一个潜在原因可能是npx expo prebuild命令正在修改或删除build.gradle文件,这将阻止项目正常构建。另一个可能是npx expo prebuild命令正在更改build.gradle文件的位置,因此Expo构建过程无法找到它。
要解决此问题,您可能需要检查npx expo prebuild命令的输出,以查看其是否对build.gradle文件或其位置进行了任何更改。您也可以尝试运行npx expo build:android命令来重建Android项目,并查看其是否修复了问题。如果问题仍然存在,您可能需要查阅Expo文档或向Expo社区寻求帮助以获得进一步的帮助。
pxyaymoc3#
在项目的根目录中运行
npx expo-updates
,以便使用必要的更改更新build.gradle
文件。顺便说一句,我在其他帖子下面看到了你的评论:
expo prebuild
命令在android
目录中生成一个Android项目,其中包含expo build:android
命令使用的build.gradle
文件。eas build
命令是expo build:android
命令的简写,因此它希望Android项目位于android
目录中。如果您运行
expo prebuild
,然后运行eas build
,则eas build
命令应该能够找到build.gradle
文件并成功构建Android应用。