Code review comment: As I understood this only adds native libraries of the building module likewise we need to add libraries from imports and transitive dependencies as well.

Code under review:
private static void assembleExecutable(BLangPackage bLangPackage, Path project) {
        try {
            final Path target = project.resolve(ProjectDirConstants.TARGET_DIR_NAME);
            final Path bin = target.resolve(ProjectDirConstants.BIN_DIR_NAME);
            final Path jarCache = target.resolve(ProjectDirConstants.CACHES_DIR_NAME)
                    .resolve(ProjectDirConstants.JAR_CACHE_DIR_NAME);
            String moduleJarName = bLangPackage.packageID.name.value
                    + ProjectDirConstants.BLANG_COMPILED_JAR_EXT;
            String execJarName = bLangPackage.packageID.name.value + ProjectDirConstants.EXEC_SUFFIX
                    + ProjectDirConstants.BLANG_COMPILED_JAR_EXT;
            
            Path uberJar = bin.resolve(execJarName);
            Path moduleJar = jarCache
                    .resolve(bLangPackage.packageID.orgName.value)
                    .resolve(bLangPackage.packageID.name.value)
                    .resolve(bLangPackage.packageID.version.value)
                    .resolve(moduleJarName);

            
            if (bLangPackage.symbol.entryPointExists) {
                
                Files.createDirectories(bin);

                Files.copy(moduleJar, uberJar, StandardCopyOption.REPLACE_EXISTING);
                

                
                for (BPackageSymbol importz : bLangPackage.symbol.imports) {
                    Path importJar = findImportJarPath(importz, project);

                    if (importJar != null && Files.exists(importJar)) {
                        copyFromJarToJar(importJar, uberJar);
                    }
                }

                
                String baloName = getFileName(bLangPackage.packageID.name.value);
                Path fullPathToBalo = project.resolve(ProjectDirConstants.TARGET_DIR_NAME).
                        resolve(ProjectDirConstants.TARGET_BALO_DIRECTORY).resolve(baloName);

                String destination = extractJar(fullPathToBalo.toString());

                if (Files.exists(Paths.get(destination).resolve(ProjectDirConstants.BALO_PLATFORM_LIB_DIR_NAME))) {
                    try (Stream<Path> walk = Files.walk(Paths.get(destination)
                            .resolve(ProjectDirConstants.BALO_PLATFORM_LIB_DIR_NAME))) {

                        List<String> result = walk.filter(Files::isRegularFile)
                                .map(x -> x.toString()).collect(Collectors.toList());

                        result.forEach(lib -> {
                            try {
                                copyFromJarToJar(Paths.get(lib), uberJar);
                            } catch (Exception e) {
                                throw new BLangCompilerException("Unable to create the executable :" +
                                        e.getMessage());
                            }
                        });
                    } catch (IOException e) {
                        throw new BLangCompilerException("Unable to create the executable :" + e.getMessage());
                    }
                }

            }
            
            
            
            outStream.println(project.relativize(uberJar).toString());
            
        } catch (IOException e) {
            throw new BLangCompilerException("Unable to create the executable :" + e.getMessage());
        }
    }

Line commented on: String baloName = getFileName(bLangPackage.packageID.name.value);

Revised code:
private static void assembleExecutable(BLangPackage bLangPackage, Path project) {
        try {
            final Path target = project.resolve(ProjectDirConstants.TARGET_DIR_NAME);
            final Path bin = target.resolve(ProjectDirConstants.BIN_DIR_NAME);
            final Path jarCache = target.resolve(ProjectDirConstants.CACHES_DIR_NAME)
                    .resolve(ProjectDirConstants.JAR_CACHE_DIR_NAME);
            String moduleJarName = bLangPackage.packageID.name.value
                    + ProjectDirConstants.BLANG_COMPILED_JAR_EXT;
            String execJarName = bLangPackage.packageID.name.value + ProjectDirConstants.EXEC_SUFFIX
                    + ProjectDirConstants.BLANG_COMPILED_JAR_EXT;
            
            Path uberJar = bin.resolve(execJarName);
            Path moduleJar = jarCache
                    .resolve(bLangPackage.packageID.orgName.value)
                    .resolve(bLangPackage.packageID.name.value)
                    .resolve(bLangPackage.packageID.version.value)
                    .resolve(moduleJarName);

            
            if (bLangPackage.symbol.entryPointExists) {
                
                Files.createDirectories(bin);

                Files.copy(moduleJar, uberJar, StandardCopyOption.REPLACE_EXISTING);
                

                
                for (BPackageSymbol importz : bLangPackage.symbol.imports) {
                    Path importJar = findImportJarPath(importz, project);

                    if (importJar != null && Files.exists(importJar)) {
                        copyFromJarToJar(importJar, uberJar);
                    }
                }

                
                String baloName = getFileName(bLangPackage.packageID.name.value);
                Path fullPathToBalo = project.resolve(ProjectDirConstants.TARGET_DIR_NAME).
                        resolve(ProjectDirConstants.TARGET_BALO_DIRECTORY).resolve(baloName);

                String destination = extractJar(fullPathToBalo.toString());

                if (Files.exists(Paths.get(destination).resolve(ProjectDirConstants.BALO_PLATFORM_LIB_DIR_NAME))) {
                    try (Stream<Path> walk = Files.walk(Paths.get(destination)
                            .resolve(ProjectDirConstants.BALO_PLATFORM_LIB_DIR_NAME))) {

                        List<String> result = walk.filter(Files::isRegularFile)
                                .map(x -> x.toString()).collect(Collectors.toList());

                        result.forEach(lib -> {
                            try {
                                copyFromJarToJar(Paths.get(lib), uberJar);
                            } catch (Exception e) {
                                throw new BLangCompilerException("Unable to create the executable :" +
                                        e.getMessage());
                            }
                        });
                    } catch (IOException e) {
                        throw new BLangCompilerException("Unable to create the executable :" + e.getMessage());
                    }
                }

            }
            
            
            
            outStream.println(project.relativize(uberJar).toString());
            
        } catch (IOException e) {
            throw new BLangCompilerException("Unable to create the executable :" + e.getMessage());
        }
    }