You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by sl...@apache.org on 2026/10/03 19:39:29 UTC
(maven-acr-plugin) 03/03: Document Main-Class as optional per Jakarta EE
This is an automated email from the ASF dual-hosted git repository.
slachiewicz pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/maven-acr-plugin.git
commit 845af6349315a9d76965c94065c661c7644694c6
Author: Abdullah <89...@users.noreply.github.com>
AuthorDate: Sun Aug 30 09:54:26 2026 +0000
Document Main-Class as optional per Jakarta EE
---
src/site/markdown/usage.md.vm | 9 +++++++--
1 file changed, 7 insertions(+), 2 deletions(-)
diff --git a/src/site/markdown/usage.md.vm b/src/site/markdown/usage.md.vm
index 6554af4..a92cec9 100644
--- a/src/site/markdown/usage.md.vm
+++ b/src/site/markdown/usage.md.vm
@@ -64,8 +64,13 @@ The plugin does not invent a default `Main-Class`. If you do not set
`archive.manifest.mainClass` (and you do not supply a custom manifest that
already has one), the generated jar has no `Main-Class` entry.
-The Java EE specification still requires an Application Client to declare a
-`Main-Class`. Configure Maven Archiver:
+Jakarta EE treats a jar as an application client module if it has a
+`Main-Class` manifest attribute *or* a `META-INF/application-client.xml`
+descriptor; `Main-Class` is not required.
+See the [Jakarta EE 11 platform spec](https://jakarta.ee/specifications/platform/11/jakarta-platform-spec-11.0#a3179).
+Some runtimes (GlassFish) also accept the main class as a launch argument.
+
+To put `Main-Class` in the manifest, configure Maven Archiver:
```xml
<project>