When building a Maven project that pulls from the IBM Event Streams schema registry, the build fails with an error similar to the following message:
Could not resolve dependencies for project <project>: Failed to collect dependencies at com.ibm.eventstreams.schemas:<schema-name>:jar:<version>: Failed to read artifact descriptor for com.ibm.eventstreams.schemas:<schema-name>:jar:<version> Could not transfer artifact com.ibm.eventstreams.schemas:<schema-name>:pom:<version> from/to eventstreams-schemas-repository (https://<schema-registry-route>/files/schemas): Not authorized
settings.xml code snippets provided in the Event Streams UI for both SCRAM and Mutual TLS are missing the
<servers> XML elements.
In addition, the same error can also be displayed when using SCRAM credentials, and the
Authorization value does not have the following format:
Resolving the problem
Update the Maven
settings.xml file to have the following format:
<settings> <servers> <server> <id>eventstreams-schemas-repository</id> <configuration> <httpHeaders> <property> <name>Authorization</name> <value>Basic <scram-token></value> </property> </httpHeaders> </configuration> </server> </servers> <profiles> <profile> # ...
Also, if using SCRAM credentials, ensure that the
Authorization element has the format
Basic <scram-token>, where the
<scram-token> value is a Base64-encoded string in the following format: