java - 记录需要 ASM8

标签 java spring-boot docker gradle jib

我想玩转具有预览功能的最新 Java 15。我正在使用 Spring Boot 2.4.0-M2 和 Gradle 6.7-rc2,它们都支持 Java 15 功能。
我想使用 jib 从我的项目中构建一个 docker 镜像。这是我的吊臂配置:

jib {
    from {
        image = 'openjdk:15-jdk'
    }   
    to {
        image = '<username>/<project>'
    }
    container {
        jvmFlags = ['--enable-preview']
    }
}

不幸的是,当我运行 ./gradlew jib 时出现以下错误:

Execution failed for task ':jib'.
> Records requires ASM8

这是使用 --info 标志运行时的输出:

> Task :jib FAILED
Caching disabled for task ':jib' because:
  Build cache is disabled
Task ':jib' is not up-to-date because:
  Task has not declared any outputs despite executing actions.
Searching for main class... Add a 'mainClass' configuration to 'jib' to improve build speed.
Could not find a valid main class from 'jar' task; looking into all class files to infer main class.
:jib (Thread[Execution worker for ':',5,main]) completed. Took 0.003 secs.

有人遇到过类似的问题吗?

最佳答案

如果您在 Android 上获得此功能并且您使用的是 Moshi 1.13.0 和 Dagger Hilt,请将其添加到您应用根目录中的 gradle.properties 文件中。

 android.jetifier.ignorelist=moshi-1.13.0

https://github.com/square/moshi/issues/1463#issuecomment-994576201

关于java - 记录需要 ASM8,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64087297/

相关文章:

java - getJSONObject 方法有问题

java - 如何从 Java 进行 Amazon AWS API 调用?

image - 通过多用户对外部Docker注册表进行特定访问

java - 使用 Java.io.File 列出目录内容时的奇怪行为

java - 未正确添加客户总数

java - 使用 JpaRepository 注入(inject) Autowiring 依赖项失败

java - 发布 NewRelicMeterRegistry 时如何过滤计量

java - 如何设置 Spring Boot 以运行 HTTPS/HTTP 端口

docker - 我们可以控制 .dockerignore 文件中内容的区分大小写吗?

linux - Docker - 如何编写自定义负载均衡器?