88use Magento \Deploy \Source \SourcePool ;
99use Magento \Deploy \Package \Package ;
1010use Magento \Deploy \Package \PackageFactory ;
11+ use Magento \Framework \Module \Manager ;
1112use Magento \Framework \View \Asset \PreProcessor \FileNameResolver ;
1213
1314/**
@@ -43,6 +44,9 @@ class Collector implements CollectorInterface
4344 * @var PackageFactory
4445 */
4546 private $ packageFactory ;
47+
48+ /** @var \Magento\Framework\Module\Manager */
49+ private $ moduleManager ;
4650
4751 /**
4852 * Default values for package primary identifiers
@@ -65,11 +69,14 @@ class Collector implements CollectorInterface
6569 public function __construct (
6670 SourcePool $ sourcePool ,
6771 FileNameResolver $ fileNameResolver ,
68- PackageFactory $ packageFactory
72+ PackageFactory $ packageFactory ,
73+ Manager $ moduleManager = null
6974 ) {
7075 $ this ->sourcePool = $ sourcePool ;
7176 $ this ->fileNameResolver = $ fileNameResolver ;
7277 $ this ->packageFactory = $ packageFactory ;
78+ $ this ->moduleManager = $ moduleManager ?: \Magento \Framework \App \ObjectManager::getInstance ()
79+ ->get (\Magento \Framework \Module \Manager::class);
7380 }
7481
7582 /**
@@ -81,6 +88,9 @@ public function collect()
8188 foreach ($ this ->sourcePool ->getAll () as $ source ) {
8289 $ files = $ source ->get ();
8390 foreach ($ files as $ file ) {
91+ if ($ file ->getModule () && !$ this ->moduleManager ->isEnabled ($ file ->getModule ())) {
92+ continue ;
93+ }
8494 $ file ->setDeployedFileName ($ this ->fileNameResolver ->resolve ($ file ->getFileName ()));
8595 $ params = [
8696 'area ' => $ file ->getArea (),
0 commit comments