Missing dependency when "maven install" with generated pom.xml (TC10 Versioned Settings + Kotlin)

Answered

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

  1. I have used Eclipse's Import... feature
  2. imported "Existing Maven Projects", pointing to the generated pom.xml
  3. Projects are imported in the Project Explorer
  4. 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

2 comments

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.

0

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!

0

Please sign in to leave a comment.