[GERONIMO-6819] adding jakarta packaging for openwebbeans knight
diff --git a/documentation/src/content/openwebbeans-knight.adoc b/documentation/src/content/openwebbeans-knight.adoc
index da559c2..4ac7a98 100644
--- a/documentation/src/content/openwebbeans-knight.adoc
+++ b/documentation/src/content/openwebbeans-knight.adoc
@@ -118,6 +118,11 @@
a|`extension.openwebbeans.runtime.properties.skipOptimizations`|boolean|By default the knight will enable some optimization properties like skipping validation and `@Vetoed` on packages. If undesired set it to `true`.
|===
+== Jakarta
+
+If you are using CDI under jakarta namespace, OpenWebBeans jakarta is supported through a shade.
+You must define as extensions or dependencies the openwebbeans Jakarta stack (`openwebbeans-se-bom` artifact can help) with the `openwebbeans-knight` with `jakarta` classifier.
+
---
Previous: link:knights.html[Knights]
diff --git a/knights/openwebbeans-knight/pom.xml b/knights/openwebbeans-knight/pom.xml
index 801273a..d04d3f5 100644
--- a/knights/openwebbeans-knight/pom.xml
+++ b/knights/openwebbeans-knight/pom.xml
@@ -67,7 +67,7 @@
<dependency>
<groupId>org.apache.openwebbeans</groupId>
<artifactId>openwebbeans-se</artifactId>
- <version>2.0.22</version>
+ <version>2.0.25</version>
</dependency>
<dependency>
<groupId>org.graalvm.nativeimage</groupId>
@@ -76,4 +76,46 @@
<scope>provided</scope>
</dependency>
</dependencies>
+
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-shade-plugin</artifactId>
+ <version>3.2.4</version>
+ <executions>
+ <execution>
+ <phase>package</phase>
+ <goals>
+ <goal>shade</goal>
+ </goals>
+ <configuration>
+ <shadedArtifactAttached>true</shadedArtifactAttached>
+ <shadedClassifierName>jakarta</shadedClassifierName>
+ <createDependencyReducedPom>false</createDependencyReducedPom>
+ <artifactSet> <!-- don't include transitive deps -->
+ <includes>
+ <include>${project.groupId}:${project.artifactId}</include>
+ </includes>
+ </artifactSet>
+ <relocations>
+ <relocation>
+ <pattern>javax.inject</pattern>
+ <shadedPattern>jakarta.inject</shadedPattern>
+ </relocation>
+ <relocation>
+ <pattern>javax.interceptor</pattern>
+ <shadedPattern>jakarta.interceptor</shadedPattern>
+ </relocation>
+ <relocation>
+ <pattern>javax.enterprise</pattern>
+ <shadedPattern>jakarta.enterprise</shadedPattern>
+ </relocation>
+ </relocations>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
</project>
diff --git a/knights/openwebbeans-knight/src/main/java/org/apache/geronimo/arthur/knight/openwebbeans/OpenWebBeansExtension.java b/knights/openwebbeans-knight/src/main/java/org/apache/geronimo/arthur/knight/openwebbeans/OpenWebBeansExtension.java
index c400aec..00c1e8f 100644
--- a/knights/openwebbeans-knight/src/main/java/org/apache/geronimo/arthur/knight/openwebbeans/OpenWebBeansExtension.java
+++ b/knights/openwebbeans-knight/src/main/java/org/apache/geronimo/arthur/knight/openwebbeans/OpenWebBeansExtension.java
@@ -194,7 +194,7 @@
context.register(model);
});
customAnnotations.stream() // DefaultAnnotation.of
- .filter(it -> !it.getName().startsWith("javax."))
+ .filter(it -> !it.getName().startsWith("javax.") && !it.getName().startsWith("jakarta."))
.map(Class::getName)
.sorted()
.map(it -> {