The solution to this is buried in a small change in a tabbed systemjs.config.js file in the angular2 quickstart - very easy to overlook for someone just wanting to move up from RC1 to RC2 without reading every single word on the 'quickstart' page.
Note the suggested 'end' (everything after defining the npPackageNames array) of the system.config.js file for RC1 looked like this:
// Add package entries for angular packages
ngPackageNames.forEach(function(pkgName) {
packages['@angular/'+pkgName] = { main: pkgName + '.umd.js', defaultExtension: 'js' };
});
var config = {
map: map,
packages: packages
}
System.config(config);
})(this);
whereas the new suggested 'end' of the system.config.js file for RC now looks like this:
// Individual files (~300 requests):
function packIndex(pkgName) {
packages['@angular/'+pkgName] = { main: 'index.js', defaultExtension: 'js' };
}
// Bundled (~40 requests):
function packUmd(pkgName) {
packages['@angular/'+pkgName] = { main: '/bundles/' + pkgName + '.umd.js', defaultExtension: 'js' };
}
// Most environments should use UMD; some (Karma) need the individual index files
var setPackageConfig = System.packageWithIndex ? packIndex : packUmd;
// Add package entries for angular packages
ngPackageNames.forEach(setPackageConfig);
var config = {
map: map,
packages: packages
};
System.config(config);
})(this);
Making this change let's everyone know where to find the router.umd.js, platform-browser-dynamic, http.umd.js and the core.umd.js files. ... which allows the app to fire up.