title: Tycho: Dependency resolver uses versions of Eclipse platform plugins which cannot be fetched from the Eclipse p2 repository through a P2 Nexus proxy
body: <p><strong>Situation</strong></p>
  
  <ul>
  <li>I have an Eclipse RCP application that gets built with maven using Tycho.</li>
  <li>The application gets built from the command line using a simple <code>mvn install</code>.</li>
  <li>During the build, the p2 dependencies are retrieved from a Nexus proxy repository, mirroring Eclipse's kepler repository.</li>
  </ul>
  
  <p><strong>Problem</strong></p>
  
  <p>Until a while ago, this build worked fine. All dependencies were resolved and fetched correctly.</p>
  
  <p>Now the Tycho OSGi dependency resolver starts adding dependencies to Platform plug-ins for version X, while the Kepler version for that plug-in is version Y.</p>
  
  <p>For example:</p>
  
  <ul>
  <li>Kepler version: org.eclipse.emf.ecore.xmi_2.9.0.v20130528-0742</li>
  <li>OSGi dependency: org.eclipse.emf.ecore.xmi_2.9.1.v20130827-0309</li>
  </ul>
  
  <p>The resulting Maven output is:</p>
  
  <pre><code>[INFO] Scanning for projects...
  [INFO] Computing target platform for MavenProject: com.mycompany.products.myproduct:myproduct.gui.build:1.8.17-SNAPSHOT @ /home/myusername/programming/myproduct/gui/product-gui-1.8.x/gui/myproduct.gui.build/pom.xml
  [INFO] Adding repository http://nexus.buildnet.mycompany.com/nexus/content/repositories/myproduct-releases/.meta/p2
  [INFO] Adding repository http://nexus.buildnet.mycompany.com/nexus/content/repositories/myproduct-snapshots/.meta/p2
  [INFO] Adding repository http://nexus.buildnet.mycompany.com/nexus/content/repositories/eclipse-kepler
  [INFO] Resolving dependencies of MavenProject: com.mycompany.products.myproduct:myproduct.gui.build:1.8.17-SNAPSHOT @ /home/myusername/programming/myproduct/gui/product-gui-1.8.x/gui/myproduct.gui.build/pom.xml
  [INFO] Downloading org.eclipse.core.runtime
  [INFO] Fetching org.eclipse.core.runtime_3.9.0.v20130326-1255.jar.pack.gz from http://nexus.buildnet.mycompany.com/nexus/content/repositories/eclipse-kepler/plugins/ (0B of 31.5kB at 0B/s)
  [INFO] Fetching org.eclipse.core.runtime_3.9.0.v20130326-1255.jar.pack.gz from http://nexus.buildnet.mycompany.com/nexus/content/repositories/eclipse-kepler/plugins/ (4kB of 31.5kB at 0B/s)
  [INFO] 1 operation remaining.
  [INFO] Downloading org.eclipse.emf.ecore.xmi
  [INFO] Downloading org.eclipse.ui.workbench
  [INFO] Downloading org.eclipse.jface
  ...
  &lt;many are downloaded correctly&gt;
  ...
  [INFO] Downloading org.eclipse.rcp_root
  [INFO] Downloading org.eclipse.swt.gtk.linux.x86
  [ERROR] Internal error: java.lang.RuntimeException: "Messages while reading artifacts from child repositories": ["Problems while reading artifacts from http://nexus.buildnet.mycompany.com/nexus/content/repositories/eclipse-kepler": ["Artifact not found: http://nexus.buildnet.mycompany.com/nexus/content/repositories/eclipse-kepler/plugins/org.eclipse.emf.ecore.xmi_2.9.1.v20130827-0309.jar.", "Artifact not found: http://nexus.buildnet.mycompany.com/nexus/content/repositories/eclipse-kepler/plugins/org.eclipse.ui.workbench_3.105.1.v20130821-1411.jar.", "Artifact not found: http://nexus.buildnet.mycompany.com/nexus/content/repositories/eclipse-kepler/plugins/org.eclipse.jface_3.9.1.v20130725-1141.jar.", "Artifact not found: http://nexus.buildnet.mycompany.com/nexus/content/repositories/eclipse-kepler/plugins/org.eclipse.core.resources_3.8.101.v20130717-0806.jar.",............]] -&gt; [Help 1]
  </code></pre>
  
  <p><strong>Question</strong></p>
  
  <p>How does Tycho pick dependency versions? I read <a href="http://wiki.eclipse.org/Tycho/Target_Platform#Simple_target_platform_configuration" rel="nofollow">here</a> that I just need to add the Kepler repository to my project to match Tycho against the Kepler target platform.</p>
  
  <p>How can Tycho pick versions that do not seem to be stored in the Kepler repository. Where does the Tycho dependency resolver find these non-Kepler versions?</p>