This folder mirrors a small subset of artifacts from Maven Central [1]. In order to create this mirror, we do the following steps: 1. Create a settings.xml [2] file that specifies the location for the repository. 2. Run maven to build the IDE. This process will use Tycho and download and cache all the dependencies in the specified repository. 3. Remove the folder p2 inside the repository, which contains artifacts generated during the build in step 2. We only need cached artifacts. 4. Update settings.xml to specify that it should run in offline mode, and make sure that the repository has all the necessary contents. Step 1: Create a settings.xml <?xml version="1.0" encoding="UTF-8"?> <settings xmlns="http://maven.apache.org/SETTINGS/1.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd"> <localRepository>/path/to/tycho/tycho-dependencies-m2repo</localRepository> <offline>false</offline> </settings> Step 2: Run maven using the above settings.xml $ cd /path/to/folder/with/pom.xml $ mvn -s /path/to/above/settings.xml package This should download and cache all the necessary dependencies in the repository specified in the settings.xml. Step 3: Remove unnecessary files from the repository. It turns out that Tycho also populates a whole bunch of eclipse plugins into the p2 folder inside the repository. These don't need to be checked in, so they can be removed. Step 4: Validate that the repository contains everything necessary by changing the offline attribute to true, and then rebuild. If everything goes well, then the repository can be checked in. TODO This method could possibly be automated using the Maven Dependency plugin [3]. The "copy-dependencies" task from that plugin allows you to recursively copy all the dependencies of a particular POM. Here is an example command to download all the dependencies for com.android.tools:sdklib:22.7.2 $ mvn org.apache.maven.plugins:maven-dependency-plugin:2.8:copy-dependencies \ -f ~/.m2/repository/com/android/tools/sdklib/22.7.2/sdklib-22.7.2.pom \ -DoutputDirectory=`pwd`/target \ -Dmdep.copyPom=true \ -Dmdep.useRepositoryLayout=true Unfortunately, this doesn't seem to work for the Tycho plugin since it seems like a more complicated multi module setup. The POM for the Tycho plugin specifies sub modules which the dependency plugin doesn't seem to be able to cope with. [1] http://search.maven.org/ [2] https://maven.apache.org/settings.html [3] http://maven.apache.org/plugins/maven-dependency-plugin/