OHDSI Home | Forums | Wiki | Github

Build of WebAPI fails due to missing plugin

Hello,
I’ve already checked the following topic but it doesn’t seem to be the same issue.

I’m building on a Windows server and getting the following error:

[ERROR] Plugin com.qmino:miredot-plugin:2.2 or one of its dependencies could not be resolved:
Failed to read artifact descriptor for com.qmino:miredot-plugin:jar:2.2:
Could not transfer artifact com.qmino:miredot-plugin:pom:2.2
from/to maven-default-http-blocker: Blocked mirror for repositories: [miredot (http://nexus.qmino.com/content/repositories/miredot, default, releases+snapshots)] -> [Help 1]

my build command is:
mvn clean package -DskipTests -s WebAPIConfig/settings.xml -P webapi-mssql

Versions:
PS E:\Apps\GitSourceCode\WebAPI> mvn -version
Apache Maven 3.8.1 (05c21c65bdfed0f71a2f2ada8b84da59348c4c5d)
Maven home: E:\Apps\Maven\bin…
Java version: 1.8.0_281, vendor: Oracle Corporation, runtime: E:\Apps\JRE
Default locale: en_US, platform encoding: Cp1252
OS name: “windows server 2019”, version: “10.0”, arch: “amd64”, family: “windows”
PS E:\Apps\GitSourceCode\WebAPI>

nexus repository is perfectly reachable from the web browser, we don’t have any firewall nor any other kind of restriction

WebApi source code is from version 2.8.2

Thanks in advance for any help

Hi, sorry, I had to update my original answer:

It looks like there isn’t a https endpoint for this…but the error stems from:

Failed to read artifact descriptor for com.qmino:miredot-plugin:jar:2.2:
Could not transfer artifact com.qmino:miredot-plugin:pom:2.2
from/to maven-default-http-blocker: Blocked mirror for repositories: [miredot (http://nexus.qmino.com/content/repositories/miredot, default, releases+snapshots)] -

I’ll look into the error message and see what I can find.

1 Like

According to the Maven release notes for version 3.8.1 (which is the version you are using) they put in some default blocking of HTTP to prevent a security vulnerability.

So, you can either try to downgrade your maven install to a prior version (3.6.3), or try to look up how to allow the miredot repository HTTP url to be allowed. I’ll look into this configuration too, but I believe that’s the issue you are facing.

1 Like

I have updated information: We’ve enabled SSL on the ohdsi maven repository, and so you’ll want to make the following changes to your POM:

Change this (at around line 480 in pom.xml)

  <repositories>
    <repository>
      <id>ohdsi</id>
      <name>repo.ohdsi.org</name>
      <url>http://repo.ohdsi.org:8085/nexus/content/groups/public</url>
    </repository>
  </repositories>

  <pluginRepositories>
    <pluginRepository>
      <id>central</id>
      <url>https://repo.maven.apache.org/maven2</url>
    </pluginRepository>
    <pluginRepository>
      <id>miredot</id>
      <name>MireDot Releases</name>
      <url>http://nexus.qmino.com/content/repositories/miredot</url>
    </pluginRepository>
  </pluginRepositories>

To this:

  <repositories>
    <repository>
      <id>ohdsi</id>
      <name>repo.ohdsi.org</name>
      <url>https://repo.ohdsi.org/nexus/content/groups/public</url>
    </repository>
  </repositories>

  <pluginRepositories>
    <pluginRepository>
      <id>central</id>
      <url>https://repo.maven.apache.org/maven2</url>
    </pluginRepository>
    <pluginRepository>
      <id>ohdsi</id>
      <name>repo.ohdsi.org</name>
      <url>https://repo.ohdsi.org/nexus/content/groups/public</url>
    </pluginRepository>
  </pluginRepositories>

This will remove the non-SSL repositories from the pom, and load all dependencies from either central or our OHDSI nexus repository.

These changes will be incorporated into our soon-to-be-released 2.9 version.

1 Like

Thanks, Chris, changing pom.xml fixed the download issue.

1 Like

Even with the updated plugin, I’m getting errors with the SqlRender.jar dependency

webapiError

SqlRender isn’t from the pluginRepository, it’s from the normal repository. I’ll confirm if sqlRender is published to the ohdsi repository.

Update: it is there:

Update: i can see that you have the wrong value from your log: your ouput says:

transfer failed for https://repo.ohdsi.org:8085

That URL should ahve been set in your pom.xml:

  <repositories>
    <repository>
      <id>ohdsi</id>
      <name>repo.ohdsi.org</name>
      <url>https://repo.ohdsi.org/nexus/content/groups/public</url>
    </repository>
  </repositories>
1 Like

yes, missed the repository when changing the pluginRepositories, now it compiles perfectly

t