void addModuleSourceFileSets()

in src/main/java/org/apache/maven/plugins/assembly/archive/phase/ModuleSetAssemblyPhase.java [359:408]


    void addModuleSourceFileSets(
            final ModuleSources sources,
            final Set<MavenProject> moduleProjects,
            final Archiver archiver,
            final AssemblerConfigurationSource configSource)
            throws ArchiveCreationException, AssemblyFormattingException {
        if (sources == null) {
            return;
        }

        final List<FileSet> fileSets = new ArrayList<>();

        if (isDeprecatedModuleSourcesConfigPresent(sources)) {
            final FileSet fs = new FileSet();
            fs.setOutputDirectory(sources.getOutputDirectory());
            fs.setIncludes(sources.getIncludes());
            fs.setExcludes(sources.getExcludes());
            fs.setUseDefaultExcludes(sources.isUseDefaultExcludes());

            fileSets.add(fs);
        }

        List<FileSet> subFileSets = sources.getFileSets();

        if ((subFileSets == null) || subFileSets.isEmpty()) {
            final FileSet fs = new FileSet();
            fs.setDirectory("src");

            subFileSets = Collections.singletonList(fs);
        }

        fileSets.addAll(subFileSets);

        for (final MavenProject moduleProject : moduleProjects) {
            LOGGER.info("Processing sources for module project: " + moduleProject.getId());

            final List<FileSet> moduleFileSets = new ArrayList<>();

            for (final FileSet fileSet : fileSets) {
                moduleFileSets.add(createFileSet(fileSet, sources, moduleProject, configSource));
            }

            final AddFileSetsTask task = new AddFileSetsTask(moduleFileSets);

            task.setProject(moduleProject);
            task.setModuleProject(moduleProject);

            task.execute(archiver, configSource);
        }
    }