diff --git a/lib/src/barback/dart2js_transformer.dart b/lib/src/barback/dart2js_transformer.dart
index 6134e433784372acde83d22343690dc42bb23ac9..0200ac389806337f88e2bf1ff57a78e8ba18321e 100644
--- a/lib/src/barback/dart2js_transformer.dart
+++ b/lib/src/barback/dart2js_transformer.dart
@@ -89,7 +89,6 @@ class Dart2JSTransformer extends Transformer implements LazyTransformer {
   void declareOutputs(DeclaringTransform transform) {
     var primaryId = transform.primaryId;
     transform.declareOutput(primaryId.addExtension(".js"));
-    transform.declareOutput(primaryId.addExtension(".precompiled.js"));
     if (_generateSourceMaps) {
       transform.declareOutput(primaryId.addExtension(".js.map"));
     }
@@ -284,6 +283,10 @@ class _BarbackCompilerProvider implements dart.CompilerProvider {
       return new NullSink<String>();
     }
 
+    // TODO(nweiz): remove this special case when dart2js stops generating these
+    // files.
+    if (extension.endsWith(".precompiled.js")) return new NullSink<String>();
+
     var primaryId = _transform.primaryInput.id;
 
     // Dart2js uses an empty string for the name of the entrypoint library.
diff --git a/test/build/copies_browser_js_next_to_entrypoints_test.dart b/test/build/copies_browser_js_next_to_entrypoints_test.dart
index fd2a853345666c0b35e8f510b11d3cb88743f8d4..51780218c59773f9ac40032518837465f8d774d1 100644
--- a/test/build/copies_browser_js_next_to_entrypoints_test.dart
+++ b/test/build/copies_browser_js_next_to_entrypoints_test.dart
@@ -43,7 +43,6 @@ main() {
       d.dir('build', [
         d.dir('foo', [
           d.matcherFile('file.dart.js', isNot(isEmpty)),
-          d.matcherFile('file.dart.precompiled.js', isNot(isEmpty)),
           d.dir('packages', [d.dir('browser', [
             d.file('dart.js', 'contents of dart.js'),
             d.file('interop.js', 'contents of interop.js')
@@ -54,12 +53,10 @@ main() {
               d.file('interop.js', 'contents of interop.js')
             ])]),
             d.matcherFile('subfile.dart.js', isNot(isEmpty)),
-            d.matcherFile('subfile.dart.precompiled.js', isNot(isEmpty)),
           ])
         ]),
         d.dir('web', [
           d.matcherFile('file.dart.js', isNot(isEmpty)),
-          d.matcherFile('file.dart.precompiled.js', isNot(isEmpty)),
           d.dir('packages', [d.dir('browser', [
             d.file('dart.js', 'contents of dart.js'),
             d.file('interop.js', 'contents of interop.js')
@@ -69,8 +66,7 @@ main() {
               d.file('dart.js', 'contents of dart.js'),
               d.file('interop.js', 'contents of interop.js')
             ])]),
-            d.matcherFile('subfile.dart.js', isNot(isEmpty)),
-            d.matcherFile('subfile.dart.precompiled.js', isNot(isEmpty))
+            d.matcherFile('subfile.dart.js', isNot(isEmpty))
           ])
         ])
       ])
diff --git a/test/dart2js/compiles_entrypoints_in_root_package_test.dart b/test/dart2js/compiles_entrypoints_in_root_package_test.dart
index 0d93ce986f8041b4adc94118796b18806c7869c2..c2ab7b4692757ee9018453f7fc33e0bdcffed6e5 100644
--- a/test/dart2js/compiles_entrypoints_in_root_package_test.dart
+++ b/test/dart2js/compiles_entrypoints_in_root_package_test.dart
@@ -46,34 +46,28 @@ main() {
       d.dir('build', [
         d.dir('benchmark', [
           d.matcherFile('file.dart.js', isNot(isEmpty)),
-          d.matcherFile('file.dart.precompiled.js', isNot(isEmpty)),
           d.nothing('file.dart'),
           d.nothing('lib.dart'),
           d.dir('subdir', [
             d.matcherFile('subfile.dart.js', isNot(isEmpty)),
-            d.matcherFile('subfile.dart.precompiled.js', isNot(isEmpty)),
             d.nothing('subfile.dart')
           ])
         ]),
         d.dir('foo', [
           d.matcherFile('file.dart.js', isNot(isEmpty)),
-          d.matcherFile('file.dart.precompiled.js', isNot(isEmpty)),
           d.nothing('file.dart'),
           d.nothing('lib.dart'),
           d.dir('subdir', [
             d.matcherFile('subfile.dart.js', isNot(isEmpty)),
-            d.matcherFile('subfile.dart.precompiled.js', isNot(isEmpty)),
             d.nothing('subfile.dart')
           ])
         ]),
         d.dir('web', [
           d.matcherFile('file.dart.js', isNot(isEmpty)),
-          d.matcherFile('file.dart.precompiled.js', isNot(isEmpty)),
           d.nothing('file.dart'),
           d.nothing('lib.dart'),
           d.dir('subdir', [
             d.matcherFile('subfile.dart.js', isNot(isEmpty)),
-            d.matcherFile('subfile.dart.precompiled.js', isNot(isEmpty)),
             d.nothing('subfile.dart')
           ])
         ])
diff --git a/test/dart2js/outputs_deferred_libraries_test.dart b/test/dart2js/outputs_deferred_libraries_test.dart
index a7c7568e4f5512c3fc517844e78be414452cbf37..6680f12f14d7866b678fd878e8aebcf3e0a587a5 100644
--- a/test/dart2js/outputs_deferred_libraries_test.dart
+++ b/test/dart2js/outputs_deferred_libraries_test.dart
@@ -56,7 +56,6 @@ main() {
       d.dir('build', [
         d.dir('web', [
           d.matcherFile('main.dart.js', isNot(isEmpty)),
-          d.matcherFile('main.dart.precompiled.js', isNot(isEmpty)),
           d.matcherFile('main.dart.js_1.part.js', isNot(isEmpty)),
           d.matcherFile('main.dart.js_2.part.js', isNot(isEmpty)),
         ])
diff --git a/test/dart2js/supports_configuration_with_build_test.dart b/test/dart2js/supports_configuration_with_build_test.dart
index c76a40ecea0878e4121929b690671485cbe944d3..e4d56c87131fe134318151adb2e6f139bb5b7ddc 100644
--- a/test/dart2js/supports_configuration_with_build_test.dart
+++ b/test/dart2js/supports_configuration_with_build_test.dart
@@ -75,7 +75,6 @@ main() {
       d.dir('build', [
         d.dir('web', [
           d.matcherFile('file.dart.js', isMinifiedDart2JSOutput),
-          d.matcherFile('file.dart.precompiled.js', isNot(isEmpty)),
           d.dir('packages', [
             d.dir('browser', [
               d.file('dart.js', 'contents of dart.js'),