首页 > 解决方案 > 使用 IntelliJ IDEA 创建 Kotlin jar 时出现“无主清单属性”

问题描述

从我的 Kotlin 代码创建一个 jar 并运行它时,它会显示“No main manifest attribute”。查看 manifest.mf 时,它具有以下内容:

Manifest-Version: 1.0

在查看源中的文件时,它具有以下内容:

Manifest-Version: 1.0
Main-Class: MyMainClass

手动将源清单复制到 jar 时,它运行完美。

我的神器设置截图

标签: intellij-ideakotlinjvmmanifestmanifest.mf

解决方案


我在使用 Gradle 和 Kotlin 时遇到了这个错误。我必须在我build.gradle.kts的显式清单属性中添加:

tasks.withType<Jar> {
    manifest {
        attributes["Main-Class"] = "com.example.MainKt"
    }
}

gradle 文档中,最好创建一个 fatJar 任务来包含所有运行时依赖项,以防遇到java.lang.NoClassDefFoundError错误


推荐阅读