@@ -71,22 +71,31 @@ class PackageAnalyzer {
71
71
upgrade.exitCode, upgrade.stdout, upgrade.stderr, pkgDir);
72
72
log.info ("Package version: ${summary .pkgVersion }" );
73
73
74
- LibraryScanner libraryScanner =
75
- new LibraryScanner (package, pkgDir, isFlutter);
76
74
Map <String , List <String >> directLibs;
77
- try {
78
- directLibs = await libraryScanner.scanDirectLibs ();
79
- } catch (e, st) {
80
- log.severe ('Error scanning direct librariers' , e, st);
81
- }
82
75
Map <String , List <String >> transitiveLibs;
76
+
77
+ LibraryScanner libraryScanner;
78
+
83
79
try {
84
- transitiveLibs = await libraryScanner.scanTransitiveLibs ();
85
- // TODO: add platform classification based on transitive libs
86
- } catch (e, st) {
87
- log.severe ('Error scanning transitive librariers' , e, st);
80
+ libraryScanner = new LibraryScanner (package, pkgDir, isFlutter);
81
+ } on StateError catch (e, stack) {
82
+ log.severe ("Could not create LibraryScanner" , e, stack);
83
+ }
84
+
85
+ if (libraryScanner != null ) {
86
+ try {
87
+ directLibs = await libraryScanner.scanDirectLibs ();
88
+ } catch (e, st) {
89
+ log.severe ('Error scanning direct librariers' , e, st);
90
+ }
91
+ try {
92
+ transitiveLibs = await libraryScanner.scanTransitiveLibs ();
93
+ // TODO: add platform classification based on transitive libs
94
+ } catch (e, st) {
95
+ log.severe ('Error scanning transitive librariers' , e, st);
96
+ }
97
+ if (! keepTransitiveLibs) transitiveLibs = null ;
88
98
}
89
- if (! keepTransitiveLibs) transitiveLibs = null ;
90
99
91
100
Set <AnalyzerOutput > analyzerItems;
92
101
try {
0 commit comments