🧩 DumpAutoload
Generates or regenerates Composer's autoloader files, optionally optimizing the class map.
When to use
Use it when you have manually modified package code, added new class files, or want to generate an optimized autoloader before a production deployment. Equivalent to running composer dump-autoload [--optimize].
Signature
go
func (c *Composer) DumpAutoload(optimize bool) errorParameters
| Parameter | Type | Description |
|---|---|---|
optimize | bool | When true, generates an optimized class map (converting PSR-4/PSR-0 to a classmap), speeding up class loading in production |
Return value
error: returns the corresponding error message if an error occurs while generating the autoloader files; nil on success.
Example
go
package main
import (
"fmt"
"log"
"github.com/scagogogo/composer-skills/pkg/composer"
)
func main() {
comp, err := composer.New(composer.DefaultOptions())
if err != nil {
log.Fatalf("initialization failed: %v", err)
}
// Development: generate a standard autoloader (fast, incremental)
if err := comp.DumpAutoload(false); err != nil {
log.Fatalf("failed to generate autoloader: %v", err)
}
// Production: generate an optimized autoloader
if err := comp.DumpAutoload(true); err != nil {
log.Fatalf("failed to generate optimized autoloader: %v", err)
}
fmt.Println("Autoloader files generated")
}Advanced
- When you need to specify multiple options such as
--classmap-authoritative,--apcu, and--no-devat once, useDumpAutoloadWithOptions. - Composer typically runs dump-autoload automatically after installing/updating dependencies, so manual invocation is unnecessary; you only need to trigger it explicitly after manually changing code.