导致以下问题的原因是什么?我的Android SDK版本不受支持吗?
Starting JS server...
Building and installing the app on the device (cd android && gradlew.bat installDebug)...
FAILURE: Build failed with an exception.
* What went wrong:
A problem occurred configuring project ':app'.
> failed to find Build Tools revision 23.0.1
答案 0 :(得分:136)
您可能需要更新构建工具。
当我尝试从图形界面更新时遇到问题,它没有显示确切的次要版本,所以我无法更新到它。
通过查看终端的可用版本来解决:
android list sdk -a
[...]
Packages available for installation or update: 156
1- Android SDK Tools, revision 24.4
2- Android SDK Platform-tools, revision 23.0.1
3- Android SDK Platform-tools, revision 23.1 rc1
4- Android SDK Build-tools, revision 23.0.1
[...]
安装正确的版本:
android update sdk -a -u -t 4
答案 1 :(得分:73)
只是注意 - 可能会出现此错误,因为您安装的构建工具的唯一版本是太新。
我得到了OP得到的错误(抱怨react-native无法找到Build Tools修订版23.0.1)。当我查看我的Android SDK Manager时,我看到了:
我天真地认为安装最新版本的Build-tools(编写本文时为23.0.2)可行,但显然不行。另外安装23.0.1修复了问题。
答案 2 :(得分:28)
我还遇到了较新版本的SDK Build工具(与Mark相同)的问题,但我设法通过修改android/app/build.gradle
并设置正确的版本来解决它,例如
android {
compileSdkVersion 23
buildToolsVersion "23.0.2"
...
更新:正如Mark建议的那样,明智的做法是以这种方式更新次要(或补丁)版本。 不更新此版本的另一个原因是当您有大量具有本机部分的第三方库时 - 您最终可能会更新所有这些库。所以你必须减轻新版本的可能好处和更多的工作。
答案 3 :(得分:4)
需要修改4个文件
grep buildToolsVersion * -r | grep 23.0.1
class Struct(dict):
def __init__(self, *args, **kwargs):
super(Struct, self).__init__(*args, **kwargs)
self.__dict__ = self
stats = Struct(user='Mohamed', password='secret', uri='bit.ly/1Syb5DU')
print('stats.user: {}'.format(stats.user))
print('stats.password: {}'.format(stats.password))
print('stats.uri: {}'.format(stats.password))
print("stats['user']: {}".format(stats['user']))
print("stats['password']: {}".format(stats['password']))
print("stats['uri']: {}".format(stats['uri']))
答案 4 :(得分:3)
我必须将我的Android项目的build.gradle
更改为:
compileSdkVersion 23
buildToolsVersion "23.0.3"
defaultConfig {
applicationId "com.demoproject"
minSdkVersion 16
targetSdkVersion 23
versionCode 1
versionName "1.0"
ndk {
abiFilters "armeabi-v7a", "x86"
}
答案 5 :(得分:3)
这意味着系统上安装的Android Build Tools不是应用程序配置文件中的内容(您的配置文件指向23.0.1),但您的系统上可能有23,24或25.0。*。 / p>
解决此问题的解决方案:
build.gradle
下的anroid/app
文件buildToolsVersion
“23.0.1”,并将其替换为您系统上的最新版本。您可以在此处找到它:C:\Program Files (x86)\Android\android-sdk\build-tools
OR 您可以尝试在系统中安装build.gradle
文件中的版本(使用SDK管理器)。
答案 6 :(得分:1)
如果你有Build Tools 24.0.1版,那么请更新你的build.gradle
以匹配buildToolsVersion "24.0.0"
我的Android/Sdk/build-tools/24.0.1/source.properties
已将Pkg.Revision
设置为24.0.0
。
答案 7 :(得分:1)
在/Users/username/Library/Android/sdk/build-tools
目录中查找版本号,然后修改与Gradle配置对应的buildToolsVersion
的版本号
答案 8 :(得分:1)
从Android SDK管理器v25,您必须直接从Android Studio安装正确的构建工具,因为list<int> swapList(list<int> &theList)
{
list<int> li;
auto start = theList.rbegin(), stop = theList.rend();
for (auto it = start; it != stop; ++it)
{
li.push_back(*it);
}
return li;
}
int main()
{
list<int> source { 1,2,3,4 };
list<int> swapped = swapList(source);
for (auto i : swapped) {
cout << i << " ";
}
}
命令不再起作用:
答案 9 :(得分:0)
我遇到了这个问题,试图在命令行上构建以下反应本机的文档。我通过在android studio中打开项目解决了这个问题。不匹配的依赖项将出现在应用程序底部的构建失败小吃栏中。对于每个失败,请单击链接以解决问题。
答案 10 :(得分:0)
我发现,如果您从react-native项目中卸载了一些软件包,并且在页面底部的构建gradle依赖项中仍然存在软件包,也会发生这种情况,
{
project(':react-native-sound-player')
}
确保在删除项目后删除MainApplication.java文件中的关联代码(':react-native-sound-player')