我在gradle构建中遇到了问题。我使用Spring官网提供的标准(https://spring.io/guides/gs/rest-service/),但是当我尝试使用gradle构建时,出现了以下错误:
这个 Gradle 版本无法使用,但是当我使用另一个版本(我在学校时用的)时,它完美地运行。
我在gradle构建中遇到了问题。我使用Spring官网提供的标准(https://spring.io/guides/gs/rest-service/),但是当我尝试使用gradle构建时,出现了以下错误:
这个 Gradle 版本无法使用,但是当我使用另一个版本(我在学校时用的)时,它完美地运行。
有两种可能性
src/main/java/your/package
)添加以下内容以指示您的主类所在位置
springBoot {
mainClass = "hello.FileUploader"
}
我相当肯定这是1。
java
添加到环境变量中——我把路径设置成了src/main/my/package
而不是src/main/java/my/package
。 - Ryan Heathcotebuild.gradle
共同编译 Java 和 Groovy,换句话说,我移动了 sourceSets
。对我来说,方法#2起作用了。 - Paul我也遇到了这个问题,这是我解决问题的方法:
如果您的项目仅是其他项目中使用的模块,请改用 org.springframework.boot:spring-boot-starter
而不是 org.springframework.boot:spring-boot-starter-web
。
或在 gradle 中设置主类:
mainClassName = 'your.package.MainClass'
或者只需禁用bootRepackage
bootRepackage {
enabled = false
}
你的项目中没有主方法(否则插件会找到一个)。主方法有非常特定的签名,因此请检查是否有public static void main(String[] args)
。
添加
bootRepackage {
mainClass = 'your.app.package.Application'
}
我知道这篇文章很老了,但是在尝试构建我的第一个Spring Boot应用程序时(https://spring.io/guides/gs/spring-boot/#scratch),我遇到了这个问题。 因此,在教程中提到的pom.xml文件的位置是不正确的。你需要将它放在src文件夹之外。 因此,这是最终的目录结构 - /workspace/src/main/java/hello/HelloController.java /workspace/src/main/java/hello/Application.java /workspace/pom.xml
我也遇到了这个问题。
我曾经被build.gradle
文件的位置所困惑:我认为它应该位于src/main/java/hello,因为在创建此子目录结构的指令之后提到了它。
它应该放置在包含src文件夹的根文件夹中。一旦我这样做并从根文件夹而不是按照指南指示运行"./gradlew build
",则可以成功构建。
我没有执行gradle的标准安装,只是下载了二进制文件,可能这就是"./gradlew build
"失败的原因。
我通过指定编码解决了这个问题。可能是因为我在IDE中编写代码。
java -Dfile.encoding=UTF-8 -jar build <filename>.jar
Application
类中)? - Dave Syermain()
方法需要String[] args
吗? - Dave Syer