groovy 我不包括java.lang.字符串bean?

pnwntuvh  于 2022-11-01  发布在  Java
关注(0)|答案(2)|浏览(139)

我有一个用Groovy编写的小型Spring Boot测试项目,使用Gradle构建。

spring run src/com/eval/EvalMain.groovy src/com/eval/InputObj.groov

我收到


***************************

APPLICATION FAILED TO START

***************************

Description:

Parameter 0 of constructor in com.eval.InputObj required a bean of type 'java.lang.String' that could not be found.

Action:

Consider defining a bean of type 'java.lang.String' in your configuration.

我的印象是Gradle为我提供了这类功能,而且它应该可以工作,因为Groovy是基于Java构建的。(另外,它是如何知道包路径java.lang的?)下面是我的gradle.build,任何帮助都将不胜感激!

buildscript {
    ext {
        springBootVersion = '1.4.2.RELEASE'
    }
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath("org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}")
    }
}

apply plugin: 'groovy'
apply plugin: 'org.springframework.boot'

jar {
    baseName = 'testJar'
    version = '.0.0.2'
}
sourceCompatibility = 1.8
targetCompatibility = 1.8

repositories {
    mavenCentral()
}

dependencies {
    compile('org.springframework.boot:spring-boot-starter')
    testCompile('org.springframework.boot:spring-boot-starter-test')
}

springBoot {
    mainClass = "com.eval.EvalMain"
}
wtlkbnrh

wtlkbnrh1#

我的印象是Gradle为我提供了这类功能,而且它应该可以工作,因为Groovy是基于Java构建的。
constructor com.eval.InputObj required a bean of type 'java.lang.String'异常与Gradle无关,因为您的InputObj Bean对象需要一个构造函数参数,该参数是一个String参数,您需要提供**(使用Spring配置XML或注解)**以创建Bean/对象。

nwlls2ji

nwlls2ji2#

对于那些运行Lombok的用户,您可能需要@AllArgsConstructor或@NoArgsConstructor Lombok Doc
我还发现这个spring ticket很有帮助

相关问题