spring boot 1.0升级到2.0时java测试编译错误:'bad signature ¾4s9'

标签 java spring-boot gradle spring-boot-2

我有一个这样的 gradle 项目:

root
  |
  |---- projectA
  |   |
  |   |----main
  |
  |---- projectB
  |   |
  |   |----test
 ...

projectA 正在将 springboot 1.0 升级到 2.0
projectA gradle.build是这样的:

...
jar {
    enabled = true
}
...

项目B测试依赖于项目A
projectB gradle.build是这样的:

...
dependencies {
    testCompile project(':projectA')
}
...

运行 ./gradlew :projectB:test 时发生编译错误
bad signature ¾4s9

错误消息是:

xxx.TestSupport.java:20: error: cannot access QueryManager
bad class file xxx/xxx/QueryManager.class
bad signature ¾4s9

TestSupport.java 位于项目B
QueryManager 位于项目A 中。 querymanager 类使用 lombok 和 ea.async。

TestSupport.java 的内容是:

@SpringBootTest(webEnvironment = WebEnvironment.RANDOM_PORT, classes = {
        MysqlConfigurationSelector.class
},
properties = {"query.mysql.nio.enable=true","query.mysql.port=9011"})
@RunWith(SpringRunner.class)
@ActiveProfiles("test")
public abstract class TestSupport {}

我进行了很多搜索,但找不到任何有用的内容。

最佳答案

我已经解决了这个问题。 eaAsync lib((github.com/Electronicarts/ea-async)最新版本1.2.3出现编译错误。降级到1.0.5后,问题解决了。

关于spring boot 1.0升级到2.0时java测试编译错误:'bad signature ¾4s9',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61654338/

相关文章:

java - Char 到 int,只使用大写字母?

java - 将数据写入 JavaFX Tableview

android - 无法使用 Gradle 构建 Android 项目(使用 Android 注释)

templates - Gradle复制任务扩展yaml文件转义整个字符串

android - APK打包过程中文件重复或Android UnsatisfiedLinkError

java - 没有为使用名称 'redirect-action' 映射的类型 'success' 定义结果类型

Java Jersey PathParams 检查和 NotFoundException 自定义消息

java - 包含外部 jar 依赖项 spring boot 测试

java - 使用 Spring Web 将自定义对象从客户端传递到 REST 端点

spring-boot - Spring Webflux : Extract value from Mono