1

Grails 3.3.10 アプリケーションを Grails 4.0.0 に移行し、Java 8 から OpenJDK 11 に移行しました。テストとアプリケーションを開発環境 (Windows 10 マシン) で実行するためのいくつかの作業の後、実行可能な war をドッカーadoptopenjdk/openjdk11:alpine。Docker のエントリポイントは、アプリを実行するだけです。

java <some options> -jar /app/application.war

ただし、Docker を実行すると、Micronaut の初期化時にエラーが発生します。

java.util.ServiceConfigurationError: サービスのロード中にエラーが発生しました [org.grails.databinding.converters.$DefaultConvertersConfigurationDefinitionClass]: javax/annotation/PreDestroy

io.micronaut.core.io.service.DefaultServiceDefinition.lambda$load$0(DefaultServiceDefinition.java:71) で

...

原因: java.lang.NoClassDefFoundError: javax/annotation/PreDestroy

...

原因: java.lang.ClassNotFoundException: javax.annotation.PreDestroy

compile 'javax.annotation:javax.annotation-api:1.3.2'gradle の依存関係を追加しようとしましたが、成功しませんでした。

アプリケーションを実行するために何が欠けていますか?

4

1 に答える 1