diff --git a/packages/flutter_tools/lib/src/build_system/targets/web.dart b/packages/flutter_tools/lib/src/build_system/targets/web.dart
index d097dcb..ef5a7c8 100644
--- a/packages/flutter_tools/lib/src/build_system/targets/web.dart
+++ b/packages/flutter_tools/lib/src/build_system/targets/web.dart
@@ -55,12 +55,16 @@
 
     String contents;
     if (hasPlugins) {
+      final String generatedPath = environment.projectDir
+        .childDirectory('lib')
+        .childFile('generated_plugin_registrant.dart')
+        .absolute.uri.toString();
       contents = '''
 import 'dart:ui' as ui;
 
 import 'package:flutter_web_plugins/flutter_web_plugins.dart';
 
-import 'generated_plugin_registrant.dart';
+import '$generatedPath';
 import "$import" as entrypoint;
 
 Future<void> main() async {
diff --git a/packages/flutter_tools/lib/src/web/compile.dart b/packages/flutter_tools/lib/src/web/compile.dart
index c924c3e..7644f63 100644
--- a/packages/flutter_tools/lib/src/web/compile.dart
+++ b/packages/flutter_tools/lib/src/web/compile.dart
@@ -27,9 +27,10 @@
   }
   final bool hasWebPlugins = findPlugins(flutterProject)
     .any((Plugin p) => p.platforms.containsKey(WebPlugin.kConfigKey));
+  await injectPlugins(flutterProject, checkProjects: true);
   final Status status = logger.startProgress('Compiling $target for the Web...', timeout: null);
   final Stopwatch sw = Stopwatch()..start();
-  final BuildResult result = await const BuildSystem().build(const WebReleaseBundle(), Environment(
+  final BuildResult result = await buildSystem.build(const WebReleaseBundle(), Environment(
     outputDir: fs.directory(getWebBuildDirectory()),
     projectDir: fs.currentDirectory,
     buildDir: flutterProject.directory
