Maven build error when integrate Google ReCaptcha Enterprise: Unable to get bundle symbolic name | Community
Skip to main content
October 21, 2023

Maven build error when integrate Google ReCaptcha Enterprise: Unable to get bundle symbolic name

  • October 21, 2023
  • 2 replies
  • 1505 views

We are trying to integrate Google ReCaptcha Enterprise lib, here is my pom:

 

in pom.xml:

<dependency>
<groupId>com.google.cloud</groupId>
<artifactId>google-cloud-recaptchaenterprise</artifactId>
<version>3.25.0</version>
</dependency>

 

in core/pom.xml:

<dependency>
<groupId>com.google.cloud</groupId>
<artifactId>google-cloud-recaptchaenterprise</artifactId>
</dependency>

 

in all/pom.xml:

<embedded>
<groupId>com.google.cloud</groupId>
<artifactId>google-cloud-recaptchaenterprise</artifactId>
<target>/apps/ilx-apps-packages/application/install</target>
</embedded>


<dependency>
<groupId>com.google.cloud</groupId>
<artifactId>google-cloud-recaptchaenterprise</artifactId>
<version>3.25.0</version>
</dependency>

 

When I run:

 

mvn clean install -PautoInstallSinglePackage or mvn clean package install -PautoInstallSinglePackage

 

 

I got error:

 

[ERROR] Failed to execute goal com.adobe.aem:aemanalyser-maven-plugin:1.4.20:project-analyse (aem-analyser) on project myApp.all: A fatal error occurred while analysing the features, see error cause:: Unable to get bundle symbolic name from artifact com.google.cloud:google-cloud-recaptchaenterprise:3.25.0 -> [Help 1]

 

 

I have tried these solutions mention in 

https://experienceleaguecommunities.adobe.com/t5/adobe-experience-manager/google-enterprise-captcha-integration/td-p/416719

https://experienceleaguecommunities.adobe.com/t5/adobe-experience-manager/importing-3rd-party-java-maven-dependency-com-google-cloud/m-p/606489

 

such as add following in pom.xml:

 

<plugin> <groupId>org.apache.felix</groupId> <artifactId>maven-bundle-plugin</artifactId> <extensions>true</extensions> <configuration> <instructions> <Import-Package>*;resolution:=optional</Import-Package> <Export-Package> com.google.recaptchaenterprise.v1.*, com.google.cloud.recaptchaenterprise.v1.* </Export-Package> <Embed-Dependency>*;scope=compile|runtime</Embed-Dependency> <Embed-Transitive>true</Embed-Transitive> </instructions> </configuration> </plugin>

 

 

 

 

None of them is working.

I am using aem-sdk 2023.4. Any help is appreciated.

 

This post is no longer active and is closed to new replies. Need help? Start a new post to ask your question.

2 replies

aanchal-sikka
Community Advisor
Community Advisor
October 22, 2023
Aanchal Sikka
lxs1Author
October 22, 2023

Hi @aanchal-sikka ,

 

Thanks for reply, I mentioned this "solution" in my post, my error message is different from that in that thread. Though the answer on 7//22/21 was marked resolved, but people kept having the problem with it, you can read the all comments to the end marked on 10/12/22.

 

arunpatidar
Community Advisor
Community Advisor
October 23, 2023

Hi @lxs1 
The issue could be that the jar is not a osgi bundle, you may have to wrap this as an osgi bundle and then use it from local repository

https://experienceleaguecommunities.adobe.com/t5/adobe-experience-manager/com-jcraft-jsch-cannot-be-resolved-aem-as-a-cloud/m-p/404197 

Arun Patidar
lxs1Author
October 24, 2023

Thanks @arunpatidar , I just realized that my pom is not correct (see https://cloud.google.com/java/docs/setup), it should be 

In pom.xml:

 

 

<dependencyManagement> <dependencies> <dependency> <groupId>com.google.cloud</groupId> <artifactId>libraries-bom</artifactId> <version>26.20.0</version> <type>pom</type> <scope>import</scope> </dependency> </dependencies> </dependencyManagement> <dependencies> <dependency> <groupId>com.google.cloud</groupId> <artifactId>google-cloud-bigquery</artifactId> </dependency> </dependencies> <plugin> <groupId>org.apache.felix</groupId> <artifactId>maven-bundle-plugin</artifactId> <extensions>true</extensions> <configuration> <instructions> <Bundle-SymbolicName>${project.groupId}.${project.artifactId}</Bundle-SymbolicName> <Bundle-Version>${project.version}</Bundle-Version> <Import-Package>*;resolution:=optional</Import-Package> <Fragment-Host>system.bundle; extension:=framework</Fragment-Host> <Export-Package> com.google.recaptchaenterprise.v1.*, com.google.cloud.recaptchaenterprise.v1.* </Export-Package> <Embed-Dependency>*;scope=compile|runtime</Embed-Dependency> <Embed-Transitive>true</Embed-Transitive> </instructions> </configuration> </plugin>

 

 

in core/pom.xml:

 

<dependency> <groupId>com.google.cloud</groupId> <artifactId>google-cloud-recaptchaenterprise</artifactId> </dependency>

 

 

Since it's not a single jar, so the solutions in http://www.wemblog.com/2012/04/how-to-integrate-3rd-party-jar-file-in.html doesn't apply.

 

With above pom, I got error:

 

[ERROR] [api-regions-exportsimports] myproject:my-app.core:1.0.0-SNAPSHOT: Bundle my-apps.core:1.0.0-SNAPSHOT is importing package(s) [com.google.cloud.recaptchaenterprise.v1, com.google.recaptchaenterprise.v1] in start level 20 but no bundle is exporting these for that start level. (my-project:myapp-apps.all:1.0.0-SNAPSHOT)

 

 

I tried to add following in 

all/pom.xml, 

 

<embedded> <groupId>com.google.cloud</groupId> <artifactId>google-cloud-recaptchaenterprise</artifactId> <target>/apps/ilx-apps-packages/application/install</target> </embedded> <dependency> <groupId>com.google.cloud</groupId> <artifactId>google-cloud-recaptchaenterprise</artifactId> </dependency>

 

 

Then I got error:

 

[ERROR] Failed to execute goal com.adobe.aem:aemanalyser-maven-plugin:1.4.20:project-analyse (aem-analyser) on project my-apps.all: A fatal error occurred while analysing the features, see error cause:: Unable to get bundle symbolic name from artifact com.google.cloud:google-cloud-recaptchaenterprise:3.24.0 -> [Help 1]