Missing dependency when "maven install" with generated pom.xml (TC10 Versioned Settings + Kotlin)
Hi everyone,
I tried today to use the Versioned Settings feature for a project in a fresh TC10 installation. The export and commit into TFS went very well, but I'm struggling with using the generated source code in an IDE. I use Eclipse for editing the source code. Since TC10's export also provides a pom, I thought I might as well just use that.
The issue is that whenever I issue a "maven build" or "maven install" from Eclipse, Maven complains about a missing dependency, and errors out.
>> maven install
[INFO] Scanning for projects...
[INFO]
[INFO] Using the builder org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder with a thread count of 1
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building TitianRootProject Config DSL Script 1.0-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[WARNING] The POM for org.jetbrains.teamcity:configs-dsl-kotlin-plugins:pom:SNAPSHOT is missing, no dependency information available
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 0.504 s
[INFO] Finished at: 2016-07-29T14:46:33+00:00
[INFO] Final Memory: 5M/123M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal on project TitianRootProject_dsl: Could not resolve dependencies for project TitianRootProject:TitianRootProject_dsl:jar:1.0-SNAPSHOT: Failure to find org.jetbrains.teamcity:configs-dsl-kotlin-plugins:pom:SNAPSHOT in http://download.jetbrains.com/teamcity-repository was cached in the local repository, resolution will not be reattempted until the update interval of jetbrains-all has elapsed or updates are forced -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/DependencyResolutionException
Here's what is in the generated pom
<dependencies>
<dependency>
<groupId>org.jetbrains.teamcity</groupId>
<artifactId>configs-dsl-kotlin</artifactId>
<version>${teamcity.dsl.version}</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.jetbrains.teamcity</groupId>
<artifactId>configs-dsl-kotlin-plugins</artifactId>
<version>SNAPSHOT</version>
<type>pom</type>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.jetbrains.kotlin</groupId>
<artifactId>kotlin-stdlib</artifactId>
<version>${kotlin.version}</version>
<scope>provided</scope>
</dependency>
</dependencies>
Setup
- Fresh Eclipse Version: Neon (4.6) Build id: I20160606-1100
- Java Development Tools 3.12.0v20160606-1100
- m2e (Maven plugin) 1.5.0.20140606-0033
- kotlin plugins from the marketplace 0.7.1.v20160706-1250
Steps taken so far
- I have used Eclipse's Import... feature
- imported "Existing Maven Projects", pointing to the generated pom.xml
- Projects are imported in the Project Explorer
- Right clicked pom.xml => Run As... => maven build/install...
[I am not very experienced with Maven, and even less with Kotlin, so I may be doing something very wrong there]
I have briefly tried with a fresh IntelliJ IDEA installation (latest as of today), but haven't had much more luck; many of the TeamCity plugin symbols are not resolved (such as TfsVcsRoot for example), and none of the TeamCity libraries are shown as dependencies.
Any hints at what I am doing wrong? I know I could also simply edit them without compiling or type checking and TeamCity would do it for me, but it seems a bit wasteful to do it that way, and in yesterday's webinar, it was shown as possible to compile locally.
Thanks everyone
Antoine
Please sign in to leave a comment.
Missing maven artifact is served by TeamCity server. The pom.xml should contain a section:
<repository>
<id>teamcity-server</id>
<url>{teamcity server url}/app/dsl-plugins-repository</url>
<snapshots>
<enabled>true</enabled>
</snapshots>
</repository>
Please check if the TeamCity server is accessible by the url.
Hi Dmitry,
I feel a bit guilty. It indeed was that - i realised later that my VM had been turned off...
Thanks for having spent a thought on it!