我对格雷德有意见. 我正在try 构建一个项目,但我收到一个错误:
插件[id:‘com.google.dagger.helt’,版本:‘2.36’,应用:FALSE] 在以下任何来源中均未找到:
- Gradle核心插件(插件不在‘org.gradle’命名空间中)
- Plugin Repositories (could not resolve plugin artifact 'com.google.dagger.hilt:com.google.dagger.hilt.gradle.plugin:2.36')
Searched in the following repositories: Google MavenRepo
下面是我的libs.version.toml文件:
[versions]
# Plugins
android-gradle-plugin = "7.0.0"
spotless-plugin-gradle = "5.12.5"
# Kotlin
kotlin = "1.5.21"
ktlint = "0.41.0"
# AndroidX
androidx-core-ktx = "1.5.0"
androidx-appcompat = "1.3.0"
# UI
material = "1.3.0"
# Hilt DI
hilt = "2.36"
# JVM Unit Tests
junit = "4.13.2"
# Instrumentation Tests
androidx-junit = "1.1.2"
androidx-espresso-core = "3.3.0"
[plugins]
# Plugins
hilt-gradle-plugin = { id = "dagger.hilt.android.plugin", version.ref = "hilt" }
spotless-plugin-gradle = { id = "com.diffplug.spotless", version.ref = "spotless-plugin-gradle" }
kotlin-gradle-plugin = { id = "org.jetbrains.kotlin.jvm", version.ref = "kotlin" }
android-gradle-plugin = { id = "com.android.tools.build.gradle", version.ref = "android-gradle-plugin"}
[libraries]
# Kotlin
kotlin-stdlib = { module = "org.jetbrains.kotlin:kotlin-stdlib", version.ref = "kotlin" }
# AndroidX
androidx-core-ktx = { module = "androidx.core:core-ktx", version.ref = "androidx-core-ktx" }
androidx-appcompat = { module = "androidx.appcompat:appcompat", version.ref = "androidx-appcompat" }
# UI
material = { module = "com.google.android.material:material", version.ref = "material" }
# Hilt DI
hilt-android = { module = "com.google.dagger:hilt-android", version.ref = "hilt" }
hilt-compiler = { module = "com.google.dagger:hilt-android-compiler", version.ref = "hilt" }
# Hilt DI - JVM / Instrumentation Tests
hilt-testing = { module = "com.google.dagger:hilt-android-testing", version.ref = "hilt" }
# JVM Unit Tests
junit = { module = "junit:junit", version.ref = "junit" }
# Instrumentation Tests
androidx-junit = { module = "androidx.test.ext:junit", version.ref = "androidx-junit" }
androidx-espresso-core = { module = "androidx.test.espresso:espresso-core", version.ref = "androidx-espresso-core" }
APP\build.gradle:
plugins {
alias(libs.plugins.hilt.gradle.plugin)
alias(libs.plugins.kotlin.gradle.plugin)
alias(libs.plugins.spotless.plugin.gradle)
}
android {
compileSdkVersion 31
defaultConfig {
applicationId "com.litekite.ime"
minSdkVersion 24
targetSdkVersion 31
versionCode 1
versionName "1.0"
vectorDrawables.useSupportLibrary = true
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
}
sourceSets {
main.java.srcDirs += "src/main/kotlin"
androidTest.assets.srcDirs += files("$projectDir/schemas".toString())
}
buildTypes {
release {
minifyEnabled true
shrinkResources true
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
}
buildFeatures {
viewBinding = true
dataBinding = true
}
lintOptions {
baseline file("lint-baseline.xml")
warningsAsErrors true
enable "Interoperability"
}
compileOptions {
sourceCompatibility JavaVersion.VERSION_11
targetCompatibility JavaVersion.VERSION_11
}
kotlinOptions {
jvmTarget = JavaVersion.VERSION_11
}
}
kapt {
correctErrorTypes true
}
dependencies {
implementation fileTree(dir: "libs", include: ["*.jar"])
implementation(libs.kotlin.stdlib)
implementation(libs.androidx.core.ktx)
implementation(libs.androidx.appcompat)
implementation(libs.material)
// Hilt
implementation(libs.hilt.android)
kapt(libs.hilt.compiler)
// Hilt - Instrumentation test helpers
androidTestImplementation(libs.hilt.testing)
kaptAndroidTest(libs.hilt.compiler)
// Hilt - Local unit test helpers
testImplementation(libs.hilt.testing)
kaptTest(libs.hilt.compiler)
testImplementation(libs.junit)
androidTestImplementation(libs.androidx.junit)
androidTestImplementation(libs.androidx.espresso.core)
}
Biuld.gradle:
plugins {
alias(libs.plugins.hilt.gradle.plugin) apply false
alias(libs.plugins.kotlin.gradle.plugin) apply false
alias(libs.plugins.spotless.plugin.gradle) apply false
}
allprojects {
repositories {
google()
mavenCentral()
}
}
allprojects {
repositories {
google()
mavenCentral()
}
}
spotless {
ratchetFrom 'origin/main'
format 'misc', {
target '**/*.gradle', '**/*.md', '**/.gitignore'
trimTrailingWhitespace()
indentWithSpaces()
endWithNewline()
}
format 'xml', {
target '**/*.xml'
trimTrailingWhitespace()
indentWithSpaces()
endWithNewline()
}
kotlin {
target '**/src/**/*.kt'
ktlint(libs.versions.ktlint.get())
licenseHeaderFile rootProject.file('spotless/copyright.kt')
}
}
我不明白错误是什么,ChatGPT给出了相同的答案. 如果有人知道原因是什么以及如何修复它,请帮助. 我使用的是Gradle 8.0
DistributionUrl=https://services.gradle.org/distributions/gradle-8.0-bin.zip
Settings.gradle:
pluginManagement {
repositories {
google()
mavenCentral()
gradlePluginPortal()
}
}
rootProject.name = "IME"
include ':app'
dependencyResolutionManagement {
repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
repositories {
google()
mavenCentral()
}
}