我尝试使用Canary 8实现JetPack Compose,但每次尝试同步gradle时都出现此错误
- 应用插件请求[id:'com. android.应用程序']**
我的app\build. gradle文件如下
plugins {
id 'com.android.application'
id 'kotlin-android'
}
android {
compileSdkVersion 30
buildToolsVersion "30.0.0"
defaultConfig {
applicationId "com.example.myapplication"
minSdkVersion 21
targetSdkVersion 30
versionCode 1
versionName "1.0"
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
}
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
kotlinOptions {
jvmTarget = '11'
useIR = true
}
buildFeatures {
compose true
}
composeOptions {
kotlinCompilerExtensionVersion compose_version
kotlinCompilerVersion '1.4.30'
}
}
dependencies {
implementation 'androidx.core:core-ktx:1.3.2'
implementation 'androidx.appcompat:appcompat:1.2.0'
implementation 'com.google.android.material:material:1.2.1'
implementation "androidx.compose.ui:ui:$compose_version"
implementation "androidx.compose.material:material:$compose_version"
implementation "androidx.compose.ui:ui-tooling:$compose_version"
implementation 'androidx.lifecycle:lifecycle-runtime-ktx:2.3.0-alpha06'
implementation 'androidx.activity:activity-compose:1.3.0-alpha02'
testImplementation 'junit:junit:4.+'
androidTestImplementation 'androidx.test.ext:junit:1.1.2'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.3.0'
}
我的build. gradle文件如下所示
buildscript {
ext {
compose_version = '1.0.0-beta01'
}
repositories {
google()
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:7.0.0-alpha08'
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.4.30"
}
}
task clean(type: Delete) {
delete rootProject.buildDir
}
and this is my gradle-wrapper.properties
distributionBase=GRADLE_USER_HOME
distributionUrl=https\://services.gradle.org/distributions/gradle-6.8.2-all.zip
distributionPath=wrapper/dists
zipStorePath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
9条答案
按热度按时间djp7away1#
Android Gradle插件7需要Java 11。
转到
File
〉Project Structure
并将JDK位置更改为Embedded JDK
。gev0vcfq2#
对于Android Studio Artic Fox(2020.3.1),您可以在此处找到JDK设置:
然后将设置更改为“嵌入式JDK”
ddhy6vgd3#
对于Android Studio Artic Fox(2020.3.1),Android Gradle插件7需要Java 11。使用快捷键Ctr+Alt+Shift+S或转至文件〉项目结构,然后将JDK位置更改为嵌入式JDK。
xe55xuns4#
检查下图以重定向JDK源代码:
第一步.
第二步.
第三步。
你应该可以走了。
vm0i2vca5#
我遇到构建缓存问题,错误为:
从根gradle属性文件中删除
org.gradle.caching=true
解决了该问题。fdbelqdn6#
根据文档,AGP 7.x.x需要Gradle 7。如您正在使用Gradle-wrapper中所示,您正在使用Gradle 6.8.2。请尝试更新项目以使用Gradle 7(当前最新版本为7.0-milestone-2)。您可以手动执行此操作,也可以简单地通过File〉Project Structure执行此操作。
yr9zkbsy7#
我想你需要做的就是先去:
1.在gradle项目部分,选择:Gradle JDK版本下拉菜单
1.它将显示您设备上安装的所有JDK//请参见右下角下拉菜单的随附图片。
1.选择JDK 11。
完成,现在您应该可以毫无问题地构建。
或者,如果您使用CLI进行构建,则将~/.zshrc(或Ubuntu的bash等效文件,我使用的是MacOS 11,因此这里是Zsh,您的设备上应该有Bash)更改为JDK 11。更改Zsh/Bash资源文件后,保存它,然后执行命令:
$ source ~/.zshrc
//更新更改$ java -version
//检查java版本示例输出java版本:
注意:* 我使用的是MacOS 11.2.1,Android Studio Artic Fox,2020.3.1,Gradle版本7.0.2*
mzsu5hc08#
文件-〉项目结构-〉模块x1c 0d1x
首选项-〉构建、执行、部署-〉构建工具-〉Gradle
对我有用
hgtggwj09#
将插件更新到最低1.7.0版本