Index: pkg/analysis_server/lib/src/server/driver.dart |
diff --git a/pkg/analysis_server/lib/src/server/driver.dart b/pkg/analysis_server/lib/src/server/driver.dart |
index 1238a1c462cb5795c510623e2dc3a297897db557..2d62373120892bd7b91c09c1c0dee3c1ca064274 100644 |
--- a/pkg/analysis_server/lib/src/server/driver.dart |
+++ b/pkg/analysis_server/lib/src/server/driver.dart |
@@ -26,6 +26,7 @@ import 'package:analyzer/src/generated/sdk.dart'; |
import 'package:analyzer/src/generated/sdk_io.dart'; |
import 'package:args/args.dart'; |
import 'package:linter/src/plugin/linter_plugin.dart'; |
+import 'package:plugin/manager.dart'; |
import 'package:plugin/plugin.dart'; |
/** |
@@ -405,16 +406,16 @@ class Driver implements ServerStarter { |
// |
ServerPlugin serverPlugin = new ServerPlugin(); |
List<Plugin> plugins = <Plugin>[]; |
+ plugins.addAll(AnalysisEngine.instance.requiredPlugins); |
+ plugins.add(AnalysisEngine.instance.commandLinePlugin); |
+ plugins.add(AnalysisEngine.instance.optionsPlugin); |
plugins.add(serverPlugin); |
- plugins.addAll(_userDefinedPlugins); |
plugins.add(linterPlugin); |
plugins.add(linterServerPlugin); |
+ plugins.addAll(_userDefinedPlugins); |
- // Defer to the extension manager in AE for plugin registration. |
- AnalysisEngine.instance.userDefinedPlugins = plugins; |
- // Force registration. |
- AnalysisEngine.instance.taskManager; |
- |
+ ExtensionManager manager = new ExtensionManager(); |
+ manager.processPlugins(plugins); |
// |
// Create the sockets and start listening for requests. |
// |