java-17-amazon-corretto に javadoc が入っていないという落とし穴
事象
Bitbucket Pipelines で使っているカスタマイズの Dockerイメージを jdk11 -> jdk17 にバージョンアップしたところ、javadoc でエラーが発生
See https://docs.gradle.org/7.4.2/userguide/command_line_interface.html#sec:command_line_warnings 6 actionable tasks: 6 executed at org.gradle.process.internal.DefaultExecHandle.failed(DefaultExecHandle.java:369) at org.gradle.process.internal.ExecHandleRunner.run(ExecHandleRunner.java:87) at org.gradle.internal.operations.CurrentBuildOperationPreservingRunnable.run(CurrentBuildOperationPreservingRunnable.java:42) ... 2 more Caused by: net.rubygrapefruit.platform.NativeException: Could not start '/usr/lib/jvm/java-17-amazon-corretto.x86_64/bin/javadoc' at net.rubygrapefruit.platform.internal.DefaultProcessLauncher.start(DefaultProcessLauncher.java:27) at net.rubygrapefruit.platform.internal.WrapperProcessLauncher.start(WrapperProcessLauncher.java:36) at org.gradle.process.internal.ExecHandleRunner.startProcess(ExecHandleRunner.java:98) at org.gradle.process.internal.ExecHandleRunner.run(ExecHandleRunner.java:71) ... 3 more Caused by: java.io.IOException: Cannot run program "/usr/lib/jvm/java-17-amazon-corretto.x86_64/bin/javadoc" (in directory "/opt/atlassian/pipelines/agent/build"): error=2, No such file or directory at net.rubygrapefruit.platform.internal.DefaultProcessLauncher.start(DefaultProcessLauncher.java:25) ... 6 more Caused by: java.io.IOException: error=2, No such file or directory ... 7 more
簡単に言うと、javadoc が無ぇぞ!とのこと
同じ事象でお悩みの方へ
解決済みなので、Dockerfile ほしい人はどぞ ↓
確認
docker run --entrypoint sh -it {image名}
javadoc --version sh: javadoc: command not found
確かに javadoc が無い…
原因
何かいっぱい増えてるやん…
…というわけで、java-17-amazon-corretto
ではなく、java-17-amazon-corretto-devel
をインストールするようにしましょう。
これで無事に javadoc が通りました。
以上。