gpt4 book ai didi

java - 找不到或加载主类

转载 作者:行者123 更新时间:2023-12-03 06:06:22 24 4
gpt4 key购买 nike

我创建了一个Spring boot gradle应用程序。我在build.gradle中指定了主类名称为

apply plugin: 'idea'
apply plugin: 'java'
apply plugin: 'application'
apply plugin: 'eclipse'

sourceCompatibility = 1.8
def appName = 'app'
buildDir = 'gradle-build'
mainClassName = 'package.Application'
dependencies{
----
}
configurations {
compile.exclude group: 'ch.qos.logback'
}

jar {
baseName = appName
manifest {
attributes 'Implementation-Title': 'app',
'Implementation-Version': version,
'Main-Class': mainClassName
}
}

startScripts {
applicationName = appName
}

distributions {
main {
baseName = appName
}
}

当我从Eclipse运行我的主类时,它运行正常。但是,当我执行将在gradle-build中生成的jar文件时,它会引发错误“找不到或加载主类”。

我正在执行命令
    java -jar app.jar

我也尝试过其他命令
    java -cp -jar app.jar
java -cp app.jar

在所有情况下,我都会遇到相同的错误。

我的 list 文件就是这样
 Manifest-Version: 1.0
Implementation-Title: app
Implementation-Version: 1.0.0
Main-Class: package.Application

请帮我解决这个问题。

最佳答案

我有非常类似的问题。

原来问题是我的jar文件中的Meta-INF有一些RSA,SF和dsa文件。

如下更改您的jar声明

jar {
baseName = appName
manifest {
attributes 'Implementation-Title': 'app',
'Implementation-Version': version,
'Main-Class': mainClassName
}
exclude ('META-INF/*.RSA', 'META-INF/*.SF','META-INF/*.DSA')

}

关于java - 找不到或加载主类<classname>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38644336/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com