Slackbot
02/12/2024, 5:53 PMVampire
02/12/2024, 6:00 PMsrc/main/kotlin
is not a source directory.
You have neither a settings script (which is bad practice and enforced in all other builds) nor a build script in your buildSrc
project.
So the default is used, which only sets up Groovy compilation.
Add a build script and configure it properly, for example by applying the kotlin-dsl
plugin.Antek -
02/13/2024, 1:14 AMval ktor_version: String by project
val kotlin_version: String by project
val logback_version: String by project
val koin_ktor: String = "3.5.1"
val mapStructVersion = "latest.release"
plugins {
java
checkstyle
id("com.github.spotbugs")
//LEAD TO FAIL
kotlin("jvm")
kotlin("kapt")
id("io.ktor.plugin")
id("org.jetbrains.kotlin.plugin.serialization")
}
group = "com.example"
version = "1.0"
tasks.test {
useJUnitPlatform()
}
repositories {
mavenCentral()
}
dependencies {
implementation( "com.github.javafaker:javafaker:1.0.2")
testImplementation("junit:junit:4.13")
//
// //mapstruct
// implementation("org.mapstruct:mapstruct:$mapStructVersion")
// "kapt"("org.mapstruct:mapstruct-processor:$mapStructVersion")
//
// //CORS
// implementation("io.ktor:ktor-server-cors:$ktor_version")
...
}
I am getting:
FAILURE: Build failed with an exception.
* Where:
Precompiled script plugin 'C:\Users\zwo7a\IdeaProjects\FreshNearMe\buildSrc\src\main\kotlin\myproject.java-conventions.gradle.kts' line: 1
* What went wrong:
Plugin [id: 'org.jetbrains.kotlin.jvm'] was not found in any of the following sources:
- Gradle Core Plugins (plugin is not in 'org.gradle' namespace)
- Plugin Repositories (plugin dependency must include a version number for this source)
Some of my dependencies (like mapstruct), need extra plugins (kapt for example) where should i add it? Adding this is convention plugins leads to failure. When i add this is buildSrc/build.gradle.kts then this happen...Vampire
02/13/2024, 1:16 AMbuildSrc/build.gradle.kts
?Antek -
02/13/2024, 10:40 AMplugins {
// //LEAD TO FAIL
// kotlin("jvm")
// kotlin("kapt")
// id("io.ktor.plugin")
// id("org.jetbrains.kotlin.plugin.serialization")
//
`kotlin-dsl`
}
group = "com.example"
version = "0.0.1"
repositories {
mavenCentral()
gradlePluginPortal()
}
dependencies {
implementation("com.github.spotbugs.snom:spotbugs-gradle-plugin:5.2.1")
testImplementation("org.jetbrains.kotlin:kotlin-test")
}
tasks.test {
useJUnitPlatform()
}
kotlin {
jvmToolchain(11)
}
Vampire
02/13/2024, 11:13 AMAntek -
02/13/2024, 1:43 PMdependencies {
kotlin("jvm")
kotlin("kapt")
id("io.ktor.plugin")
id("org.jetbrains.kotlin.plugin.serialization")
implementation("com.github.spotbugs.snom:spotbugs-gradle-plugin:5.2.1")
testImplementation("org.jetbrains.kotlin:kotlin-test")
}
Vampire
02/13/2024, 1:44 PMimplementation("org.jetbrains.kotlin.jvm:org.jetbrains.kotlin.jvm.gradle.plugin:1.9.22")
Antek -
02/13/2024, 7:58 PMdependencies {
//kotlin("jvm")
implementation("org.jetbrains.kotlin.jvm:org.jetbrains.kotlin.jvm.gradle.plugin:1.9.22")
//kotlin("kapt")
implementation("org.jetbrains.kotlin:kotlin-gradle-plugin:1.9.22")
//id("io.ktor.plugin")
implementation("io.ktor.plugin:plugin:2.3.8")
//id("org.jetbrains.kotlin.plugin.serialization")
implementation("org.jetbrains.kotlin:kotlin-serialization:1.9.22")
implementation("com.github.spotbugs.snom:spotbugs-gradle-plugin:5.2.1")
testImplementation("org.jetbrains.kotlin:kotlin-test")
}
Antek -
02/13/2024, 8:00 PMVampire
02/13/2024, 11:35 PM<plugin id>:<plugin id>.gradle.plugin:<plugin version>
just like I showed with JVM plugin.
Then you do not need to look for the code artifact coordinates or could be bitten by them changing.