I’m unable to recompile (Maven) a project vaadin charts . The project now depends on apache commons-io 2.5 and Vaadin charts uses 1.4. Tried to exclude org.apache.commons:commons-io from charts dependency but then Maven looks vor commons-io 2.5 in Vaadin repository. Any suggestion?
Hi Franco,
Do you have a direct dependency to commons-io 2.5? In that case priority should be given to 2.5 version, and it shouldn’t use vaadin repo for it.
Can you check if the resolved version is correct by using the following:
mvn dependency:tree -Dverbose -Dincludes=commons-io
At least in a test project I get
[INFO]
uy.com.test:test-charts:war:1.0-SNAPSHOT
[INFO]
+- com.vaadin.addon:vaadin-charts:jar:3.0.0:compile
[INFO]
| \- (commons-io:commons-io:jar:1.4:compile - omitted for conflict with 2.5)
[INFO]
\- commons-io:commons-io:jar:2.5:compile
And when building it tried vaadin repo, but succeeded only with maven central repository
Downloading: http://maven.vaadin.com/vaadin-addons/commons-io/commons-io/2.5/commons-io-2.5.pom
Downloading: http://repo.maven.apache.org/maven2/commons-io/commons-io/2.5/commons-io-2.5.pom
Downloaded: http://repo.maven.apache.org/maven2/commons-io/commons-io/2.5/commons-io-2.5.pom (13 KB at 21.3 KB/sec)
Hope this helps,
Guille
Hi Guille,
Thank you very much indeed for your fast suggestion, that’s was infact one of my trials, the problem is - when I move up org.apache.commons:commons-io:2.5 I get the error:
[ERROR]
Failed to execute goal on project ps.discuss: Could not resolve dependencies for project net.cbsolution:ps.discuss:war:1.0-SNAPSHOT: Could not find artifact org.apache.commons:commons-io:jar:2.5 i
n vaadin-addons (http://maven.vaadin.com/vaadin-addons)
Really a strange error: why Maven does not pick commons-io from Maven Central (inherited Super POM) if it does not exist in Vaadin repository? I would espect that from Maven, but it does not: for some reason Maven
insists in getting commons-io from Vaadin repository
.
Oh, now I see the issue, latest versions are under commons-io group id in maven.
Not sure if it was an issue with a single version, or what was the internal but at least
http://mvnrepository.com/artifact/org.apache.commons/commons-io
shows the artifact as moved, and there’s some more info around:
https://issues.sonatype.org/browse/MVNCENTRAL-244
http://stackoverflow.com/questions/5566734/what-is-the-difference-between-maven-dependencies-org-apache-commonscommons-io
If in doubt check the pom.xml in apache’s mirror in github:
https://github.com/apache/commons-io/blob/trunk/pom.xml#L25
Try changing the dependency definition to:
<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>2.5</version>
<dependency>
That should make the trick
Perfect!
Thank you very much Guille, I would have never noticed the change of Group-ID (Time has come to start using eyeglasses
You made my day (actually 2 days).
Franco
It was a sneaky change, indeed.
Glad it helped!