swagger-codegen-maven-plugin ============================ A Maven plugin to support the [swagger](http://swagger.io) code generation project Usage ============================ Add to your `build->plugins` section (default phase is `generate-sources` phase) ```xml io.swagger swagger-codegen-maven-plugin 2.1.5-SNAPSHOT generate src/main/resources/api.yaml java src/gen/java/main ``` Followed by: ``` mvn clean compile ``` ### General Configuration parameters - `inputSpec` - OpenAPI Spec file path - `language` - target generation language - `output` - target output path (default is `${project.build.directory}/generated-sources/swagger`) - `templateDirectory` - directory with mustache templates - `addCompileSourceRoot` - add the output directory to the project as a source root (`true` by default) - `modelPackage` - the package to use for generated model objects/classes - `apiPackage` - the package to use for generated api objects/classes - `invokerPackage` - the package to use for the generated invoker objects - `configOptions` - a map of language-specific parameters (see below) - `configHelp` - dumps the configuration help for the specified library (generates no sources) ### Custom Generator Specifying a custom generator is a bit different. It doesn't support the classpath:/ syntax, but it does support the fully qualified name of the package. You can also specify your custom templates, which also get pulled in. Notice the dependency on a project, in the plugin scope. That would be your generator/template jar. ```xml io.swagger swagger-codegen-maven-plugin ${swagger-codegen-maven-plugin-version} generate src/main/resources/yaml/yamlfilename.yaml com.my.package.for.GeneratorLanguage myTemplateDir ${project.build.directory}/generated-sources ${default.package}.handler ${default.package}.model ${default.package}.handler com.my.generator customgenerator 1.0-SNAPSHOT ``` ### Sample configuration - Please see [an example configuration](examples) for using the plugin