[英]"No main manifest attribute" when creating Kotlin jar using IntelliJ IDEA
從我的 Kotlin 代碼創建 jar 並運行它時,它顯示“沒有主要清單屬性”。 查看 manifest.mf 時,它包含以下內容:
Manifest-Version: 1.0
查看源文件中的文件時,它包含以下內容:
Manifest-Version: 1.0
Main-Class: MyMainClass
手動復制源清單到jar時,運行完美。
我在使用 Gradle 和 Kotlin 時遇到了這個錯誤。 我必須在我的build.gradle.kts
添加一個顯式清單屬性:
tasks.withType<Jar> {
manifest {
attributes["Main-Class"] = "com.example.MainKt"
}
}
從gradle 文檔中,如果遇到java.lang.NoClassDefFoundError
錯誤,最好創建一個 fatJar 任務來封裝所有運行時依賴項
1.在構建腳本中添加如下任務定義
tasks.jar {
manifest {
attributes["Main-Class"] = "MainKt"
}
configurations["compileClasspath"].forEach { file: File ->
from(zipTree(file.absoluteFile))
}
}
對於 Spring 引導應用程序:
build.gradle.kts 中對我有用的 (gradle kotlin)
plugins {
id("org.springframework.boot") version "2.6.7"
}
apply(plugin = "io.spring.dependency-management")
springBoot {
mainClass.set("com.example.Application")
}
通過閱讀此處找到的 spring-boot 文檔找到了這一切
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.