This is an automated email from the ASF dual-hosted git repository.
alien11689 pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/aries.git
The following commit(s) were added to refs/heads/trunk by this push:
new 11f1bfe3c ARIES-2172: Support jakarta.inject in blueprint-maven-plugin
11f1bfe3c is described below
commit 11f1bfe3c8733d413e5b4fe3db66fa2fc734d6cc
Author: Dominik Przybysz <[email protected]>
AuthorDate: Sat Mar 8 07:47:17 2025 +0100
ARIES-2172: Support jakarta.inject in blueprint-maven-plugin
---
.../blueprint-maven-plugin/pom.xml | 6 ++
.../handlers/{javax => jakarta}/InjectHandler.java | 11 +--
.../{javax => jakarta}/NamedBeanFinder.java | 10 +-
.../handlers/{javax => jakarta}/NamedHandler.java | 18 ++--
.../{javax => jakarta}/QualifierHandler.java | 11 +--
.../{javax => jakarta}/SingletonBeanFinder.java | 8 +-
.../plugin/handlers/javax/InjectHandler.java | 10 +-
.../plugin/handlers/javax/NamedBeanFinder.java | 10 +-
.../plugin/handlers/javax/NamedHandler.java | 14 +--
.../plugin/handlers/javax/ProducesHandler.java | 10 +-
.../plugin/handlers/javax/QualifierHandler.java | 10 +-
.../plugin/handlers/javax/SingletonBeanFinder.java | 10 +-
...rg.apache.aries.blueprint.plugin.spi.BeanFinder | 6 +-
...he.aries.blueprint.plugin.spi.InjectLikeHandler | 3 +-
...che.aries.blueprint.plugin.spi.NamedLikeHandler | 1 +
....blueprint.plugin.spi.QualifingAnnotationFinder | 3 +-
.../blueprint/plugin/BlueprintFileWriterTest.java | 101 +++++++++++++++------
.../NamedJakartaBean.java} | 11 +--
.../SimpleJakartaBean.java} | 11 +--
.../SimpleJakartaBeanUsage.java} | 37 +++++---
.../SimpleJakartaBeanUsageViaField.java} | 18 ++--
.../UnnamedJakartaBean.java} | 11 +--
.../test/qualifiers/{TestConsumer.java => A3.java} | 12 +--
.../plugin/test/qualifiers/MyFactory.java | 7 ++
.../plugin/test/qualifiers/TestConsumer.java | 2 +-
25 files changed, 208 insertions(+), 143 deletions(-)
diff --git a/blueprint-maven-plugin/blueprint-maven-plugin/pom.xml
b/blueprint-maven-plugin/blueprint-maven-plugin/pom.xml
index ad0350219..a92d87b61 100644
--- a/blueprint-maven-plugin/blueprint-maven-plugin/pom.xml
+++ b/blueprint-maven-plugin/blueprint-maven-plugin/pom.xml
@@ -42,6 +42,7 @@
<blueprint-maven-plugin-pax-cdi-handlers.version>1.0.0</blueprint-maven-plugin-pax-cdi-handlers.version>
<blueprint-maven-plugin-spi.version>1.1.0</blueprint-maven-plugin-spi.version>
<blueprint-maven-plugin-spring-handlers.version>1.0.0</blueprint-maven-plugin-spring-handlers.version>
+ <jakarta.inject.version>2.0.1</jakarta.inject.version>
<javax.enterprise.cdi-api.version>2.0.SP1</javax.enterprise.cdi-api.version>
<javax.annotation-api.version>1.3.2</javax.annotation-api.version>
<javax.inject.version>1</javax.inject.version>
@@ -139,6 +140,11 @@
<artifactId>javax.inject</artifactId>
<version>${javax.inject.version}</version>
</dependency>
+ <dependency>
+ <groupId>jakarta.inject</groupId>
+ <artifactId>jakarta.inject-api</artifactId>
+ <version>${jakarta.inject.version}</version>
+ </dependency>
<dependency>
<groupId>javax.transaction</groupId>
<artifactId>javax.transaction-api</artifactId>
diff --git
a/blueprint-maven-plugin/blueprint-maven-plugin/src/main/java/org/apache/aries/blueprint/plugin/handlers/javax/InjectHandler.java
b/blueprint-maven-plugin/blueprint-maven-plugin/src/main/java/org/apache/aries/blueprint/plugin/handlers/jakarta/InjectHandler.java
similarity index 86%
copy from
blueprint-maven-plugin/blueprint-maven-plugin/src/main/java/org/apache/aries/blueprint/plugin/handlers/javax/InjectHandler.java
copy to
blueprint-maven-plugin/blueprint-maven-plugin/src/main/java/org/apache/aries/blueprint/plugin/handlers/jakarta/InjectHandler.java
index af32f42e7..12ca3546f 100644
---
a/blueprint-maven-plugin/blueprint-maven-plugin/src/main/java/org/apache/aries/blueprint/plugin/handlers/javax/InjectHandler.java
+++
b/blueprint-maven-plugin/blueprint-maven-plugin/src/main/java/org/apache/aries/blueprint/plugin/handlers/jakarta/InjectHandler.java
@@ -6,9 +6,9 @@
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
+ * <p>
+ * http://www.apache.org/licenses/LICENSE-2.0
+ * <p>
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
@@ -16,12 +16,11 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.aries.blueprint.plugin.handlers.javax;
+package org.apache.aries.blueprint.plugin.handlers.jakarta;
+import jakarta.inject.Inject;
import org.apache.aries.blueprint.plugin.spi.InjectLikeHandler;
-import javax.inject.Inject;
-
public class InjectHandler implements InjectLikeHandler<Inject> {
@Override
public Class<Inject> getAnnotation() {
diff --git
a/blueprint-maven-plugin/blueprint-maven-plugin/src/main/java/org/apache/aries/blueprint/plugin/handlers/javax/NamedBeanFinder.java
b/blueprint-maven-plugin/blueprint-maven-plugin/src/main/java/org/apache/aries/blueprint/plugin/handlers/jakarta/NamedBeanFinder.java
similarity index 87%
copy from
blueprint-maven-plugin/blueprint-maven-plugin/src/main/java/org/apache/aries/blueprint/plugin/handlers/javax/NamedBeanFinder.java
copy to
blueprint-maven-plugin/blueprint-maven-plugin/src/main/java/org/apache/aries/blueprint/plugin/handlers/jakarta/NamedBeanFinder.java
index 350690cf5..9a46722ad 100644
---
a/blueprint-maven-plugin/blueprint-maven-plugin/src/main/java/org/apache/aries/blueprint/plugin/handlers/javax/NamedBeanFinder.java
+++
b/blueprint-maven-plugin/blueprint-maven-plugin/src/main/java/org/apache/aries/blueprint/plugin/handlers/jakarta/NamedBeanFinder.java
@@ -6,9 +6,9 @@
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
+ * <p>
+ * http://www.apache.org/licenses/LICENSE-2.0
+ * <p>
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
@@ -16,9 +16,9 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.aries.blueprint.plugin.handlers.javax;
+package org.apache.aries.blueprint.plugin.handlers.jakarta;
-import javax.inject.Named;
+import jakarta.inject.Named;
public class NamedBeanFinder implements
org.apache.aries.blueprint.plugin.spi.BeanFinder<Named> {
@Override
diff --git
a/blueprint-maven-plugin/blueprint-maven-plugin/src/main/java/org/apache/aries/blueprint/plugin/handlers/javax/NamedHandler.java
b/blueprint-maven-plugin/blueprint-maven-plugin/src/main/java/org/apache/aries/blueprint/plugin/handlers/jakarta/NamedHandler.java
similarity index 85%
copy from
blueprint-maven-plugin/blueprint-maven-plugin/src/main/java/org/apache/aries/blueprint/plugin/handlers/javax/NamedHandler.java
copy to
blueprint-maven-plugin/blueprint-maven-plugin/src/main/java/org/apache/aries/blueprint/plugin/handlers/jakarta/NamedHandler.java
index 9bfcfd44a..7e66a63c3 100644
---
a/blueprint-maven-plugin/blueprint-maven-plugin/src/main/java/org/apache/aries/blueprint/plugin/handlers/javax/NamedHandler.java
+++
b/blueprint-maven-plugin/blueprint-maven-plugin/src/main/java/org/apache/aries/blueprint/plugin/handlers/jakarta/NamedHandler.java
@@ -6,9 +6,9 @@
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
+ * <p>
+ * http://www.apache.org/licenses/LICENSE-2.0
+ * <p>
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
@@ -16,16 +16,16 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.aries.blueprint.plugin.handlers.javax;
+package org.apache.aries.blueprint.plugin.handlers.jakarta;
-import org.apache.aries.blueprint.plugin.spi.NamedLikeHandler;
-
-import javax.inject.Named;
import java.lang.reflect.AnnotatedElement;
-public class NamedHandler implements NamedLikeHandler {
+import jakarta.inject.Named;
+import org.apache.aries.blueprint.plugin.spi.NamedLikeHandler;
+
+public class NamedHandler implements NamedLikeHandler<Named> {
@Override
- public Class getAnnotation() {
+ public Class<Named> getAnnotation() {
return Named.class;
}
diff --git
a/blueprint-maven-plugin/blueprint-maven-plugin/src/main/java/org/apache/aries/blueprint/plugin/handlers/javax/QualifierHandler.java
b/blueprint-maven-plugin/blueprint-maven-plugin/src/main/java/org/apache/aries/blueprint/plugin/handlers/jakarta/QualifierHandler.java
similarity index 86%
copy from
blueprint-maven-plugin/blueprint-maven-plugin/src/main/java/org/apache/aries/blueprint/plugin/handlers/javax/QualifierHandler.java
copy to
blueprint-maven-plugin/blueprint-maven-plugin/src/main/java/org/apache/aries/blueprint/plugin/handlers/jakarta/QualifierHandler.java
index 14bb3d2bf..c59eca4e0 100644
---
a/blueprint-maven-plugin/blueprint-maven-plugin/src/main/java/org/apache/aries/blueprint/plugin/handlers/javax/QualifierHandler.java
+++
b/blueprint-maven-plugin/blueprint-maven-plugin/src/main/java/org/apache/aries/blueprint/plugin/handlers/jakarta/QualifierHandler.java
@@ -6,9 +6,9 @@
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
+ * <p>
+ * http://www.apache.org/licenses/LICENSE-2.0
+ * <p>
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
@@ -16,12 +16,11 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.aries.blueprint.plugin.handlers.javax;
+package org.apache.aries.blueprint.plugin.handlers.jakarta;
+import jakarta.inject.Qualifier;
import org.apache.aries.blueprint.plugin.spi.QualifingAnnotationFinder;
-import javax.inject.Qualifier;
-
public class QualifierHandler implements QualifingAnnotationFinder<Qualifier> {
@Override
public Class<Qualifier> getAnnotation() {
diff --git
a/blueprint-maven-plugin/blueprint-maven-plugin/src/main/java/org/apache/aries/blueprint/plugin/handlers/javax/SingletonBeanFinder.java
b/blueprint-maven-plugin/blueprint-maven-plugin/src/main/java/org/apache/aries/blueprint/plugin/handlers/jakarta/SingletonBeanFinder.java
similarity index 81%
copy from
blueprint-maven-plugin/blueprint-maven-plugin/src/main/java/org/apache/aries/blueprint/plugin/handlers/javax/SingletonBeanFinder.java
copy to
blueprint-maven-plugin/blueprint-maven-plugin/src/main/java/org/apache/aries/blueprint/plugin/handlers/jakarta/SingletonBeanFinder.java
index eb078bc80..c908dab7d 100644
---
a/blueprint-maven-plugin/blueprint-maven-plugin/src/main/java/org/apache/aries/blueprint/plugin/handlers/javax/SingletonBeanFinder.java
+++
b/blueprint-maven-plugin/blueprint-maven-plugin/src/main/java/org/apache/aries/blueprint/plugin/handlers/jakarta/SingletonBeanFinder.java
@@ -16,11 +16,13 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.aries.blueprint.plugin.handlers.javax;
+package org.apache.aries.blueprint.plugin.handlers.jakarta;
-import javax.inject.Singleton;
+import org.apache.aries.blueprint.plugin.spi.BeanFinder;
-public class SingletonBeanFinder implements
org.apache.aries.blueprint.plugin.spi.BeanFinder<Singleton> {
+import jakarta.inject.Singleton;
+
+public class SingletonBeanFinder implements BeanFinder<Singleton> {
@Override
public Class<Singleton> getAnnotation() {
return Singleton.class;
diff --git
a/blueprint-maven-plugin/blueprint-maven-plugin/src/main/java/org/apache/aries/blueprint/plugin/handlers/javax/InjectHandler.java
b/blueprint-maven-plugin/blueprint-maven-plugin/src/main/java/org/apache/aries/blueprint/plugin/handlers/javax/InjectHandler.java
index af32f42e7..776f88287 100644
---
a/blueprint-maven-plugin/blueprint-maven-plugin/src/main/java/org/apache/aries/blueprint/plugin/handlers/javax/InjectHandler.java
+++
b/blueprint-maven-plugin/blueprint-maven-plugin/src/main/java/org/apache/aries/blueprint/plugin/handlers/javax/InjectHandler.java
@@ -6,9 +6,9 @@
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
+ * <p>
+ * http://www.apache.org/licenses/LICENSE-2.0
+ * <p>
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
@@ -18,10 +18,10 @@
*/
package org.apache.aries.blueprint.plugin.handlers.javax;
-import org.apache.aries.blueprint.plugin.spi.InjectLikeHandler;
-
import javax.inject.Inject;
+import org.apache.aries.blueprint.plugin.spi.InjectLikeHandler;
+
public class InjectHandler implements InjectLikeHandler<Inject> {
@Override
public Class<Inject> getAnnotation() {
diff --git
a/blueprint-maven-plugin/blueprint-maven-plugin/src/main/java/org/apache/aries/blueprint/plugin/handlers/javax/NamedBeanFinder.java
b/blueprint-maven-plugin/blueprint-maven-plugin/src/main/java/org/apache/aries/blueprint/plugin/handlers/javax/NamedBeanFinder.java
index 350690cf5..f2e9d613b 100644
---
a/blueprint-maven-plugin/blueprint-maven-plugin/src/main/java/org/apache/aries/blueprint/plugin/handlers/javax/NamedBeanFinder.java
+++
b/blueprint-maven-plugin/blueprint-maven-plugin/src/main/java/org/apache/aries/blueprint/plugin/handlers/javax/NamedBeanFinder.java
@@ -6,9 +6,9 @@
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
+ * <p>
+ * http://www.apache.org/licenses/LICENSE-2.0
+ * <p>
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
@@ -20,7 +20,9 @@ package org.apache.aries.blueprint.plugin.handlers.javax;
import javax.inject.Named;
-public class NamedBeanFinder implements
org.apache.aries.blueprint.plugin.spi.BeanFinder<Named> {
+import org.apache.aries.blueprint.plugin.spi.BeanFinder;
+
+public class NamedBeanFinder implements BeanFinder<Named> {
@Override
public Class<Named> getAnnotation() {
return Named.class;
diff --git
a/blueprint-maven-plugin/blueprint-maven-plugin/src/main/java/org/apache/aries/blueprint/plugin/handlers/javax/NamedHandler.java
b/blueprint-maven-plugin/blueprint-maven-plugin/src/main/java/org/apache/aries/blueprint/plugin/handlers/javax/NamedHandler.java
index 9bfcfd44a..534061be1 100644
---
a/blueprint-maven-plugin/blueprint-maven-plugin/src/main/java/org/apache/aries/blueprint/plugin/handlers/javax/NamedHandler.java
+++
b/blueprint-maven-plugin/blueprint-maven-plugin/src/main/java/org/apache/aries/blueprint/plugin/handlers/javax/NamedHandler.java
@@ -6,9 +6,9 @@
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
+ * <p>
+ * http://www.apache.org/licenses/LICENSE-2.0
+ * <p>
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
@@ -18,14 +18,14 @@
*/
package org.apache.aries.blueprint.plugin.handlers.javax;
-import org.apache.aries.blueprint.plugin.spi.NamedLikeHandler;
-
import javax.inject.Named;
import java.lang.reflect.AnnotatedElement;
-public class NamedHandler implements NamedLikeHandler {
+import org.apache.aries.blueprint.plugin.spi.NamedLikeHandler;
+
+public class NamedHandler implements NamedLikeHandler<Named> {
@Override
- public Class getAnnotation() {
+ public Class<Named> getAnnotation() {
return Named.class;
}
diff --git
a/blueprint-maven-plugin/blueprint-maven-plugin/src/main/java/org/apache/aries/blueprint/plugin/handlers/javax/ProducesHandler.java
b/blueprint-maven-plugin/blueprint-maven-plugin/src/main/java/org/apache/aries/blueprint/plugin/handlers/javax/ProducesHandler.java
index 9ac888018..bf4a40b0c 100644
---
a/blueprint-maven-plugin/blueprint-maven-plugin/src/main/java/org/apache/aries/blueprint/plugin/handlers/javax/ProducesHandler.java
+++
b/blueprint-maven-plugin/blueprint-maven-plugin/src/main/java/org/apache/aries/blueprint/plugin/handlers/javax/ProducesHandler.java
@@ -6,9 +6,9 @@
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
+ * <p>
+ * http://www.apache.org/licenses/LICENSE-2.0
+ * <p>
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
@@ -18,10 +18,10 @@
*/
package org.apache.aries.blueprint.plugin.handlers.javax;
-import org.apache.aries.blueprint.plugin.spi.FactoryMethodFinder;
-
import javax.enterprise.inject.Produces;
+import org.apache.aries.blueprint.plugin.spi.FactoryMethodFinder;
+
public class ProducesHandler implements FactoryMethodFinder<Produces> {
@Override
public Class<Produces> getAnnotation() {
diff --git
a/blueprint-maven-plugin/blueprint-maven-plugin/src/main/java/org/apache/aries/blueprint/plugin/handlers/javax/QualifierHandler.java
b/blueprint-maven-plugin/blueprint-maven-plugin/src/main/java/org/apache/aries/blueprint/plugin/handlers/javax/QualifierHandler.java
index 14bb3d2bf..9ddbc8a44 100644
---
a/blueprint-maven-plugin/blueprint-maven-plugin/src/main/java/org/apache/aries/blueprint/plugin/handlers/javax/QualifierHandler.java
+++
b/blueprint-maven-plugin/blueprint-maven-plugin/src/main/java/org/apache/aries/blueprint/plugin/handlers/javax/QualifierHandler.java
@@ -6,9 +6,9 @@
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
+ * <p>
+ * http://www.apache.org/licenses/LICENSE-2.0
+ * <p>
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
@@ -18,10 +18,10 @@
*/
package org.apache.aries.blueprint.plugin.handlers.javax;
-import org.apache.aries.blueprint.plugin.spi.QualifingAnnotationFinder;
-
import javax.inject.Qualifier;
+import org.apache.aries.blueprint.plugin.spi.QualifingAnnotationFinder;
+
public class QualifierHandler implements QualifingAnnotationFinder<Qualifier> {
@Override
public Class<Qualifier> getAnnotation() {
diff --git
a/blueprint-maven-plugin/blueprint-maven-plugin/src/main/java/org/apache/aries/blueprint/plugin/handlers/javax/SingletonBeanFinder.java
b/blueprint-maven-plugin/blueprint-maven-plugin/src/main/java/org/apache/aries/blueprint/plugin/handlers/javax/SingletonBeanFinder.java
index eb078bc80..a3720a9ac 100644
---
a/blueprint-maven-plugin/blueprint-maven-plugin/src/main/java/org/apache/aries/blueprint/plugin/handlers/javax/SingletonBeanFinder.java
+++
b/blueprint-maven-plugin/blueprint-maven-plugin/src/main/java/org/apache/aries/blueprint/plugin/handlers/javax/SingletonBeanFinder.java
@@ -6,9 +6,9 @@
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
+ * <p>
+ * http://www.apache.org/licenses/LICENSE-2.0
+ * <p>
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
@@ -20,7 +20,9 @@ package org.apache.aries.blueprint.plugin.handlers.javax;
import javax.inject.Singleton;
-public class SingletonBeanFinder implements
org.apache.aries.blueprint.plugin.spi.BeanFinder<Singleton> {
+import org.apache.aries.blueprint.plugin.spi.BeanFinder;
+
+public class SingletonBeanFinder implements BeanFinder<Singleton> {
@Override
public Class<Singleton> getAnnotation() {
return Singleton.class;
diff --git
a/blueprint-maven-plugin/blueprint-maven-plugin/src/main/resources/META-INF/services/org.apache.aries.blueprint.plugin.spi.BeanFinder
b/blueprint-maven-plugin/blueprint-maven-plugin/src/main/resources/META-INF/services/org.apache.aries.blueprint.plugin.spi.BeanFinder
index d3c355137..e6514cae2 100644
---
a/blueprint-maven-plugin/blueprint-maven-plugin/src/main/resources/META-INF/services/org.apache.aries.blueprint.plugin.spi.BeanFinder
+++
b/blueprint-maven-plugin/blueprint-maven-plugin/src/main/resources/META-INF/services/org.apache.aries.blueprint.plugin.spi.BeanFinder
@@ -15,6 +15,8 @@
# limitations under the License.
#
-org.apache.aries.blueprint.plugin.handlers.javax.SingletonBeanFinder
+org.apache.aries.blueprint.plugin.handlers.blueprint.bean.BeanHandler
+org.apache.aries.blueprint.plugin.handlers.jakarta.NamedBeanFinder
+org.apache.aries.blueprint.plugin.handlers.jakarta.SingletonBeanFinder
org.apache.aries.blueprint.plugin.handlers.javax.NamedBeanFinder
-org.apache.aries.blueprint.plugin.handlers.blueprint.bean.BeanHandler
\ No newline at end of file
+org.apache.aries.blueprint.plugin.handlers.javax.SingletonBeanFinder
diff --git
a/blueprint-maven-plugin/blueprint-maven-plugin/src/main/resources/META-INF/services/org.apache.aries.blueprint.plugin.spi.InjectLikeHandler
b/blueprint-maven-plugin/blueprint-maven-plugin/src/main/resources/META-INF/services/org.apache.aries.blueprint.plugin.spi.InjectLikeHandler
index 8fef1e702..b286a7f5e 100644
---
a/blueprint-maven-plugin/blueprint-maven-plugin/src/main/resources/META-INF/services/org.apache.aries.blueprint.plugin.spi.InjectLikeHandler
+++
b/blueprint-maven-plugin/blueprint-maven-plugin/src/main/resources/META-INF/services/org.apache.aries.blueprint.plugin.spi.InjectLikeHandler
@@ -15,4 +15,5 @@
# limitations under the License.
#
-org.apache.aries.blueprint.plugin.handlers.javax.InjectHandler
\ No newline at end of file
+org.apache.aries.blueprint.plugin.handlers.jakarta.InjectHandler
+org.apache.aries.blueprint.plugin.handlers.javax.InjectHandler
diff --git
a/blueprint-maven-plugin/blueprint-maven-plugin/src/main/resources/META-INF/services/org.apache.aries.blueprint.plugin.spi.NamedLikeHandler
b/blueprint-maven-plugin/blueprint-maven-plugin/src/main/resources/META-INF/services/org.apache.aries.blueprint.plugin.spi.NamedLikeHandler
index 9bcd56a20..06e486c99 100644
---
a/blueprint-maven-plugin/blueprint-maven-plugin/src/main/resources/META-INF/services/org.apache.aries.blueprint.plugin.spi.NamedLikeHandler
+++
b/blueprint-maven-plugin/blueprint-maven-plugin/src/main/resources/META-INF/services/org.apache.aries.blueprint.plugin.spi.NamedLikeHandler
@@ -15,5 +15,6 @@
# limitations under the License.
#
+org.apache.aries.blueprint.plugin.handlers.jakarta.NamedHandler
org.apache.aries.blueprint.plugin.handlers.javax.NamedHandler
org.apache.aries.blueprint.plugin.handlers.blueprint.bean.BeanHandler
\ No newline at end of file
diff --git
a/blueprint-maven-plugin/blueprint-maven-plugin/src/main/resources/META-INF/services/org.apache.aries.blueprint.plugin.spi.QualifingAnnotationFinder
b/blueprint-maven-plugin/blueprint-maven-plugin/src/main/resources/META-INF/services/org.apache.aries.blueprint.plugin.spi.QualifingAnnotationFinder
index 15f6164ee..63bbf96e0 100644
---
a/blueprint-maven-plugin/blueprint-maven-plugin/src/main/resources/META-INF/services/org.apache.aries.blueprint.plugin.spi.QualifingAnnotationFinder
+++
b/blueprint-maven-plugin/blueprint-maven-plugin/src/main/resources/META-INF/services/org.apache.aries.blueprint.plugin.spi.QualifingAnnotationFinder
@@ -15,4 +15,5 @@
# limitations under the License.
#
-org.apache.aries.blueprint.plugin.handlers.javax.QualifierHandler
\ No newline at end of file
+org.apache.aries.blueprint.plugin.handlers.jakarta.QualifierHandler
+org.apache.aries.blueprint.plugin.handlers.javax.QualifierHandler
diff --git
a/blueprint-maven-plugin/blueprint-maven-plugin/src/test/java/org/apache/aries/blueprint/plugin/BlueprintFileWriterTest.java
b/blueprint-maven-plugin/blueprint-maven-plugin/src/test/java/org/apache/aries/blueprint/plugin/BlueprintFileWriterTest.java
index ba732df0e..8beef909c 100644
---
a/blueprint-maven-plugin/blueprint-maven-plugin/src/test/java/org/apache/aries/blueprint/plugin/BlueprintFileWriterTest.java
+++
b/blueprint-maven-plugin/blueprint-maven-plugin/src/test/java/org/apache/aries/blueprint/plugin/BlueprintFileWriterTest.java
@@ -18,19 +18,53 @@
*/
package org.apache.aries.blueprint.plugin;
+import javax.xml.XMLConstants;
+import javax.xml.parsers.DocumentBuilder;
+import javax.xml.parsers.DocumentBuilderFactory;
+import javax.xml.parsers.ParserConfigurationException;
+import javax.xml.transform.Source;
+import javax.xml.transform.dom.DOMSource;
+import javax.xml.transform.stream.StreamSource;
+import javax.xml.validation.Schema;
+import javax.xml.validation.SchemaFactory;
+import javax.xml.validation.Validator;
+import javax.xml.xpath.XPath;
+import javax.xml.xpath.XPathConstants;
+import javax.xml.xpath.XPathExpressionException;
+import javax.xml.xpath.XPathFactory;
+import java.io.ByteArrayInputStream;
+import java.io.IOException;
+import java.io.InputStream;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+
+import static
org.apache.aries.blueprint.plugin.FilteredClassFinder.findClasses;
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertNotNull;
+
import com.google.common.collect.Sets;
+import org.apache.aries.blueprint.plugin.jakarta.NamedJakartaBean;
+import org.apache.aries.blueprint.plugin.jakarta.SimpleJakartaBean;
+import org.apache.aries.blueprint.plugin.jakarta.SimpleJakartaBeanUsage;
+import
org.apache.aries.blueprint.plugin.jakarta.SimpleJakartaBeanUsageViaField;
+import org.apache.aries.blueprint.plugin.jakarta.UnnamedJakartaBean;
import org.apache.aries.blueprint.plugin.model.Blueprint;
import org.apache.aries.blueprint.plugin.model.TransactionalDef;
import org.apache.aries.blueprint.plugin.test.MyBean1;
import org.apache.aries.blueprint.plugin.test.MyBean5;
import org.apache.aries.blueprint.plugin.test.MyProduced;
-import org.apache.aries.blueprint.plugin.test.interfaces.ServiceA;
-import org.apache.aries.blueprint.plugin.test.interfaces.ServiceB;
-import org.apache.aries.blueprint.plugin.test.interfaces.ServiceD;
import org.apache.aries.blueprint.plugin.test.bean.BasicBean;
import org.apache.aries.blueprint.plugin.test.bean.BeanWithCallbackMethods;
import org.apache.aries.blueprint.plugin.test.bean.NamedBean;
import org.apache.aries.blueprint.plugin.test.bean.SimpleProducedBean;
+import org.apache.aries.blueprint.plugin.test.interfaces.ServiceA;
+import org.apache.aries.blueprint.plugin.test.interfaces.ServiceB;
+import org.apache.aries.blueprint.plugin.test.interfaces.ServiceD;
import org.apache.aries.blueprint.plugin.test.reference.BeanWithReferences;
import org.apache.aries.blueprint.plugin.test.reference.Ref1;
import org.apache.aries.blueprint.plugin.test.reference.Ref2;
@@ -48,31 +82,6 @@ import org.w3c.dom.Node;
import org.w3c.dom.NodeList;
import org.xml.sax.SAXException;
-import javax.xml.XMLConstants;
-import javax.xml.parsers.DocumentBuilder;
-import javax.xml.parsers.DocumentBuilderFactory;
-import javax.xml.parsers.ParserConfigurationException;
-import javax.xml.transform.Source;
-import javax.xml.transform.dom.DOMSource;
-import javax.xml.transform.stream.StreamSource;
-import javax.xml.validation.Schema;
-import javax.xml.validation.SchemaFactory;
-import javax.xml.validation.Validator;
-import javax.xml.xpath.XPath;
-import javax.xml.xpath.XPathConstants;
-import javax.xml.xpath.XPathExpressionException;
-import javax.xml.xpath.XPathFactory;
-import java.io.ByteArrayInputStream;
-import java.io.IOException;
-import java.io.InputStream;
-import java.util.*;
-import java.util.stream.Stream;
-import java.util.stream.StreamSupport;
-
-import static
org.apache.aries.blueprint.plugin.FilteredClassFinder.findClasses;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNotNull;
-
public class BlueprintFileWriterTest {
private static final String NS_JPA =
"http://aries.apache.org/xmlns/jpa/v1.1.0";
@@ -89,7 +98,8 @@ public class BlueprintFileWriterTest {
Set<Class<?>> beanClasses = findClasses(classFinder, Arrays.asList(
MyBean1.class.getPackage().getName(),
ReferenceListenerToProduceWithoutAnnotation.class.getPackage().getName(),
- BeanWithReferences.class.getPackage().getName()
+ BeanWithReferences.class.getPackage().getName(),
+ SimpleJakartaBean.class.getPackage().getName()
));
Set<String> namespaces = new HashSet<>(Arrays.asList(NS_JPA, NS_TX1));
Map<String, String> customParameters = new HashMap<>();
@@ -110,7 +120,7 @@ public class BlueprintFileWriterTest {
}
@Test
- public void testGenerateBeanWithInitDestroyAndfieldInjection() throws
Exception {
+ public void testGenerateBeanWithInitDestroyAndFieldInjection() throws
Exception {
Node bean1 = getBeanById("myBean1");
assertXpathEquals(bean1, "@class", MyBean1.class.getName());
@@ -798,9 +808,13 @@ public class BlueprintFileWriterTest {
Node bean2 = getBeanById("testBean2");
assertXpathEquals(bean2, "@factory-method", "create2");
+ Node bean3 = getBeanById("testBean3");
+ assertXpathEquals(bean3, "@factory-method", "create3");
+
Node consumer = getBeanById("testConsumer");
assertXpathEquals(consumer, "argument[1]/@ref", "testBean1");
assertXpathEquals(consumer, "argument[2]/@ref", "testBean2");
+ assertXpathEquals(consumer, "argument[3]/@ref", "testBean3");
}
@Test
@@ -1387,6 +1401,33 @@ public class BlueprintFileWriterTest {
Node ref1ForCons = getReferenceListById("ref3ListForProduces");
assertXpathEquals(ref1ForCons, "@interface", Ref3.class.getName());
}
+
+ @Test
+ public void testGenerateBeanWithJakartaAnnotatedBeans() throws Exception {
+ Node simpleJakartaBean = getBeanById("simpleJakartaBean");
+ assertXpathEquals(simpleJakartaBean, "@class",
SimpleJakartaBean.class.getName());
+
+ Node unnamedJakartaBean = getBeanById("unnamedJakartaBean");
+ assertXpathEquals(unnamedJakartaBean, "@class",
UnnamedJakartaBean.class.getName());
+
+ Node namedJakartaBean = getBeanById("test-named-jakarta-bean");
+ assertXpathEquals(namedJakartaBean, "@class",
NamedJakartaBean.class.getName());
+
+ Node injectingBean = getBeanById("simpleJakartaBeanUsage");
+ assertXpathEquals(injectingBean, "@class",
SimpleJakartaBeanUsage.class.getName());
+ assertXpathDoesNotExist(injectingBean, "@field-injection");
+ assertXpathEquals(injectingBean, "argument[1]/@ref",
"simpleJakartaBean");
+ assertXpathEquals(injectingBean, "property[@name='b']/@ref",
"unnamedJakartaBean");
+ assertXpathEquals(injectingBean, "property[@name='c']/@ref",
"test-named-jakarta-bean");
+
+ Node injectingBeanViaFields =
getBeanById("simpleJakartaBeanUsageViaField");
+ assertXpathEquals(injectingBeanViaFields, "@class",
SimpleJakartaBeanUsageViaField.class.getName());
+ assertXpathEquals(injectingBeanViaFields, "@field-injection", "true");
+ assertXpathEquals(injectingBeanViaFields, "property[@name='a']/@ref",
"simpleJakartaBean");
+ assertXpathEquals(injectingBeanViaFields, "property[@name='b']/@ref",
"unnamedJakartaBean");
+ assertXpathEquals(injectingBeanViaFields, "property[@name='c']/@ref",
"test-named-jakarta-bean");
+ }
+
private void assertXpathDoesNotExist(Node node, String xpathExpression)
throws XPathExpressionException {
assertXpathEquals(node, "count(" + xpathExpression + ")", "0");
}
diff --git
a/blueprint-maven-plugin/blueprint-maven-plugin/src/test/java/org/apache/aries/blueprint/plugin/test/qualifiers/TestConsumer.java
b/blueprint-maven-plugin/blueprint-maven-plugin/src/test/java/org/apache/aries/blueprint/plugin/jakarta/NamedJakartaBean.java
similarity index 79%
copy from
blueprint-maven-plugin/blueprint-maven-plugin/src/test/java/org/apache/aries/blueprint/plugin/test/qualifiers/TestConsumer.java
copy to
blueprint-maven-plugin/blueprint-maven-plugin/src/test/java/org/apache/aries/blueprint/plugin/jakarta/NamedJakartaBean.java
index 6e96d8996..b42f86c34 100644
---
a/blueprint-maven-plugin/blueprint-maven-plugin/src/test/java/org/apache/aries/blueprint/plugin/test/qualifiers/TestConsumer.java
+++
b/blueprint-maven-plugin/blueprint-maven-plugin/src/test/java/org/apache/aries/blueprint/plugin/jakarta/NamedJakartaBean.java
@@ -16,13 +16,10 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.aries.blueprint.plugin.test.qualifiers;
+package org.apache.aries.blueprint.plugin.jakarta;
-import org.apache.aries.blueprint.annotation.bean.Bean;
+import jakarta.inject.Named;
-@Bean
-public class TestConsumer {
- public TestConsumer(@A1 TestBean t1, @A2 TestBean t2) {
-
- }
+@Named("test-named-jakarta-bean")
+public class NamedJakartaBean {
}
diff --git
a/blueprint-maven-plugin/blueprint-maven-plugin/src/test/java/org/apache/aries/blueprint/plugin/test/qualifiers/TestConsumer.java
b/blueprint-maven-plugin/blueprint-maven-plugin/src/test/java/org/apache/aries/blueprint/plugin/jakarta/SimpleJakartaBean.java
similarity index 79%
copy from
blueprint-maven-plugin/blueprint-maven-plugin/src/test/java/org/apache/aries/blueprint/plugin/test/qualifiers/TestConsumer.java
copy to
blueprint-maven-plugin/blueprint-maven-plugin/src/test/java/org/apache/aries/blueprint/plugin/jakarta/SimpleJakartaBean.java
index 6e96d8996..54c63ae86 100644
---
a/blueprint-maven-plugin/blueprint-maven-plugin/src/test/java/org/apache/aries/blueprint/plugin/test/qualifiers/TestConsumer.java
+++
b/blueprint-maven-plugin/blueprint-maven-plugin/src/test/java/org/apache/aries/blueprint/plugin/jakarta/SimpleJakartaBean.java
@@ -16,13 +16,10 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.aries.blueprint.plugin.test.qualifiers;
+package org.apache.aries.blueprint.plugin.jakarta;
-import org.apache.aries.blueprint.annotation.bean.Bean;
+import jakarta.inject.Singleton;
-@Bean
-public class TestConsumer {
- public TestConsumer(@A1 TestBean t1, @A2 TestBean t2) {
-
- }
+@Singleton
+public class SimpleJakartaBean {
}
diff --git
a/blueprint-maven-plugin/blueprint-maven-plugin/src/test/java/org/apache/aries/blueprint/plugin/test/qualifiers/MyFactory.java
b/blueprint-maven-plugin/blueprint-maven-plugin/src/test/java/org/apache/aries/blueprint/plugin/jakarta/SimpleJakartaBeanUsage.java
similarity index 60%
copy from
blueprint-maven-plugin/blueprint-maven-plugin/src/test/java/org/apache/aries/blueprint/plugin/test/qualifiers/MyFactory.java
copy to
blueprint-maven-plugin/blueprint-maven-plugin/src/test/java/org/apache/aries/blueprint/plugin/jakarta/SimpleJakartaBeanUsage.java
index 8d4eb81b3..4a5a66c75 100644
---
a/blueprint-maven-plugin/blueprint-maven-plugin/src/test/java/org/apache/aries/blueprint/plugin/test/qualifiers/MyFactory.java
+++
b/blueprint-maven-plugin/blueprint-maven-plugin/src/test/java/org/apache/aries/blueprint/plugin/jakarta/SimpleJakartaBeanUsage.java
@@ -16,26 +16,33 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.aries.blueprint.plugin.test.qualifiers;
+package org.apache.aries.blueprint.plugin.jakarta;
-import org.apache.aries.blueprint.annotation.bean.Bean;
+import jakarta.inject.Inject;
+import jakarta.inject.Singleton;
-import javax.inject.Named;
+@Singleton
+public class SimpleJakartaBeanUsage {
-@Bean
-public class MyFactory {
+ private SimpleJakartaBean a;
+ private UnnamedJakartaBean b;
+ private NamedJakartaBean c;
- @Bean
- @Named("testBean1")
- @A1
- public TestBean create1() {
- return null;
+ public SimpleJakartaBeanUsage() {
}
- @Bean
- @Named("testBean2")
- @A2
- public TestBean create2() {
- return null;
+ @Inject
+ public SimpleJakartaBeanUsage(SimpleJakartaBean a) {
+ this.a = a;
+ }
+
+ @Inject
+ public void setB(UnnamedJakartaBean b) {
+ this.b = b;
+ }
+
+ @Inject
+ public void setC(NamedJakartaBean c) {
+ this.c = c;
}
}
diff --git
a/blueprint-maven-plugin/blueprint-maven-plugin/src/test/java/org/apache/aries/blueprint/plugin/test/qualifiers/TestConsumer.java
b/blueprint-maven-plugin/blueprint-maven-plugin/src/test/java/org/apache/aries/blueprint/plugin/jakarta/SimpleJakartaBeanUsageViaField.java
similarity index 72%
copy from
blueprint-maven-plugin/blueprint-maven-plugin/src/test/java/org/apache/aries/blueprint/plugin/test/qualifiers/TestConsumer.java
copy to
blueprint-maven-plugin/blueprint-maven-plugin/src/test/java/org/apache/aries/blueprint/plugin/jakarta/SimpleJakartaBeanUsageViaField.java
index 6e96d8996..9075fd75e 100644
---
a/blueprint-maven-plugin/blueprint-maven-plugin/src/test/java/org/apache/aries/blueprint/plugin/test/qualifiers/TestConsumer.java
+++
b/blueprint-maven-plugin/blueprint-maven-plugin/src/test/java/org/apache/aries/blueprint/plugin/jakarta/SimpleJakartaBeanUsageViaField.java
@@ -16,13 +16,17 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.aries.blueprint.plugin.test.qualifiers;
+package org.apache.aries.blueprint.plugin.jakarta;
-import org.apache.aries.blueprint.annotation.bean.Bean;
+import jakarta.inject.Inject;
+import jakarta.inject.Singleton;
-@Bean
-public class TestConsumer {
- public TestConsumer(@A1 TestBean t1, @A2 TestBean t2) {
-
- }
+@Singleton
+public class SimpleJakartaBeanUsageViaField {
+ @Inject
+ private SimpleJakartaBean a;
+ @Inject
+ private UnnamedJakartaBean b;
+ @Inject
+ private NamedJakartaBean c;
}
diff --git
a/blueprint-maven-plugin/blueprint-maven-plugin/src/test/java/org/apache/aries/blueprint/plugin/test/qualifiers/TestConsumer.java
b/blueprint-maven-plugin/blueprint-maven-plugin/src/test/java/org/apache/aries/blueprint/plugin/jakarta/UnnamedJakartaBean.java
similarity index 79%
copy from
blueprint-maven-plugin/blueprint-maven-plugin/src/test/java/org/apache/aries/blueprint/plugin/test/qualifiers/TestConsumer.java
copy to
blueprint-maven-plugin/blueprint-maven-plugin/src/test/java/org/apache/aries/blueprint/plugin/jakarta/UnnamedJakartaBean.java
index 6e96d8996..2634ba307 100644
---
a/blueprint-maven-plugin/blueprint-maven-plugin/src/test/java/org/apache/aries/blueprint/plugin/test/qualifiers/TestConsumer.java
+++
b/blueprint-maven-plugin/blueprint-maven-plugin/src/test/java/org/apache/aries/blueprint/plugin/jakarta/UnnamedJakartaBean.java
@@ -16,13 +16,10 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.aries.blueprint.plugin.test.qualifiers;
+package org.apache.aries.blueprint.plugin.jakarta;
-import org.apache.aries.blueprint.annotation.bean.Bean;
+import jakarta.inject.Named;
-@Bean
-public class TestConsumer {
- public TestConsumer(@A1 TestBean t1, @A2 TestBean t2) {
-
- }
+@Named
+public class UnnamedJakartaBean {
}
diff --git
a/blueprint-maven-plugin/blueprint-maven-plugin/src/test/java/org/apache/aries/blueprint/plugin/test/qualifiers/TestConsumer.java
b/blueprint-maven-plugin/blueprint-maven-plugin/src/test/java/org/apache/aries/blueprint/plugin/test/qualifiers/A3.java
similarity index 82%
copy from
blueprint-maven-plugin/blueprint-maven-plugin/src/test/java/org/apache/aries/blueprint/plugin/test/qualifiers/TestConsumer.java
copy to
blueprint-maven-plugin/blueprint-maven-plugin/src/test/java/org/apache/aries/blueprint/plugin/test/qualifiers/A3.java
index 6e96d8996..59363299c 100644
---
a/blueprint-maven-plugin/blueprint-maven-plugin/src/test/java/org/apache/aries/blueprint/plugin/test/qualifiers/TestConsumer.java
+++
b/blueprint-maven-plugin/blueprint-maven-plugin/src/test/java/org/apache/aries/blueprint/plugin/test/qualifiers/A3.java
@@ -18,11 +18,11 @@
*/
package org.apache.aries.blueprint.plugin.test.qualifiers;
-import org.apache.aries.blueprint.annotation.bean.Bean;
+import jakarta.inject.Qualifier;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
-@Bean
-public class TestConsumer {
- public TestConsumer(@A1 TestBean t1, @A2 TestBean t2) {
-
- }
+@Retention(RetentionPolicy.RUNTIME)
+@Qualifier
+public @interface A3 {
}
diff --git
a/blueprint-maven-plugin/blueprint-maven-plugin/src/test/java/org/apache/aries/blueprint/plugin/test/qualifiers/MyFactory.java
b/blueprint-maven-plugin/blueprint-maven-plugin/src/test/java/org/apache/aries/blueprint/plugin/test/qualifiers/MyFactory.java
index 8d4eb81b3..36e0ebd28 100644
---
a/blueprint-maven-plugin/blueprint-maven-plugin/src/test/java/org/apache/aries/blueprint/plugin/test/qualifiers/MyFactory.java
+++
b/blueprint-maven-plugin/blueprint-maven-plugin/src/test/java/org/apache/aries/blueprint/plugin/test/qualifiers/MyFactory.java
@@ -38,4 +38,11 @@ public class MyFactory {
public TestBean create2() {
return null;
}
+
+ @Bean
+ @jakarta.inject.Named("testBean3")
+ @A3
+ public TestBean create3() {
+ return null;
+ }
}
diff --git
a/blueprint-maven-plugin/blueprint-maven-plugin/src/test/java/org/apache/aries/blueprint/plugin/test/qualifiers/TestConsumer.java
b/blueprint-maven-plugin/blueprint-maven-plugin/src/test/java/org/apache/aries/blueprint/plugin/test/qualifiers/TestConsumer.java
index 6e96d8996..514142703 100644
---
a/blueprint-maven-plugin/blueprint-maven-plugin/src/test/java/org/apache/aries/blueprint/plugin/test/qualifiers/TestConsumer.java
+++
b/blueprint-maven-plugin/blueprint-maven-plugin/src/test/java/org/apache/aries/blueprint/plugin/test/qualifiers/TestConsumer.java
@@ -22,7 +22,7 @@ import org.apache.aries.blueprint.annotation.bean.Bean;
@Bean
public class TestConsumer {
- public TestConsumer(@A1 TestBean t1, @A2 TestBean t2) {
+ public TestConsumer(@A1 TestBean t1, @A2 TestBean t2, @A3 TestBean t3) {
}
}