maven local repository setting not effective

mvn.out shows not able to find a pom only project, which is "this" project's parent. The log reads:

=====

[DEBUG] Reading global settings from /var/upsource-3.5.3616/lib/upsource/tools/maven/conf/settings.xml
[DEBUG] Reading user settings from /var/upsource-3.5.3616/lib/upsource/tools/maven/conf/settings.xml
[DEBUG] Reading global toolchains from /var/upsource-3.5.3616/lib/upsource/tools/maven/conf/toolchains.xml
[DEBUG] Reading user toolchains from /root/.m2/toolchains.xml
[DEBUG] Using local repository at /var/upsource-3.5.3616/data/upsource-frontend/maven-cache
[DEBUG] Using manager EnhancedLocalRepositoryManager with priority 10.0 for /var/upsource-3.5.3616/data/upsource-frontend/maven-cache
[INFO] Scanning for projects...
[ERROR] [ERROR] Some problems were encountered while processing the POMs:
[FATAL] Non-resolvable parent POM for com.merkleinc.crkb:kbmatch:0.0.1-SNAPSHOT: Failure to find com.merkleinc:basehadoop:pom:1.0.6 in https://repo.maven.apache.org/maven2 was cached in the local repository, resolution will not be reattempted until the update interval of central has elapsed or updates are forced and 'parent.relativePath' points at wrong local POM @ line 15, column 13
===

But I have the local repository defined as below in /var/upsource-3.5.3616/lib/upsource/tools/maven/conf/settings.xml
 <localRepository>/home/jenkins/.m2/repository</localRepository>

And below shows the pom file is there:
======
[root@hqitrtd90 bin]# ls /home/jenkins/.m2/repository/com/merkleinc/basehadoop/1.0.6/
basehadoop-1.0.6.pom                      basehadoop-1.0.6-site.xml
basehadoop-1.0.6-site_en.xml              basehadoop-1.0.6-site.xml.lastUpdated
basehadoop-1.0.6-site_en.xml.lastUpdated  _remote.repositories
======

upsource is running as root, so it doesn't have permission issues.

So anything else I missed?

4 comments

Hey Frank,

Try to specify your maven settings.xml on the project administration page (the field called "Maven settings:").

0

Is there a way to centralize this?

If something change (added mirror, etc), we would need to edit every single project.

Team city allows you to define a global settings.xml file. Can't Upsource do the same? Or is there a way to force a local settings.xml file.

0

Unfortunately no, however, you can use Upsource API to make such changes in bulk. There is an API example located under <upsource_home>/lib/upsource/tools/api-example

0

Please sign in to leave a comment.