When defining attributes in the shadowJar.manifest closure they get written to the jar produced by the normal jar task, even if the shadowJar task is not run or even excluded.
When executing both jar tasks, the shadowJar artifact manifest is empty (besides the version), regardless of the manifest settings in both tasks.
appendManifest appends attributes also to the normal jar manifest, but produces the correct output in the shadowJar manifest.