Class ProtocCompileCppMojo

java.lang.Object
org.apache.maven.plugin.AbstractMojo
All Implemented Interfaces:
org.apache.maven.plugin.ContextEnabled, org.apache.maven.plugin.Mojo

@Mojo(name="compile-cpp", defaultPhase=GENERATE_SOURCES, requiresDependencyResolution=COMPILE, threadSafe=true) public final class ProtocCompileCppMojo extends AbstractProtocCompileMojo
This mojo executes the protoc compiler for generating main C++ sources from protocol buffer definitions. It also searches dependency artifacts for .proto files and includes them in the proto_path so that they can be referenced. Finally, it adds the .proto files to the project as resources so that they are included in the final artifact.
Since:
0.3.3
  • Field Details

    • outputDirectory

      @Parameter(required=true, property="cppOutputDirectory", defaultValue="${project.build.directory}/generated-sources/protobuf/cpp") private File outputDirectory
      This is the directory into which the .cpp will be created.
  • Constructor Details

    • ProtocCompileCppMojo

      public ProtocCompileCppMojo()
  • Method Details

    • addProtocBuilderParameters

      protected void addProtocBuilderParameters(Protoc.Builder protocBuilder)
      Description copied from class: AbstractProtocMojo
      Adds mojo-specific parameters to the protoc builder.
      Overrides:
      addProtocBuilderParameters in class AbstractProtocMojo
      Parameters:
      protocBuilder - the builder to be modified.
    • getOutputDirectory

      protected File getOutputDirectory()
      Description copied from class: AbstractProtocMojo
      Returns the output directory for generated sources. Depends on build phase so must be defined in concrete implementation.
      Specified by:
      getOutputDirectory in class AbstractProtocMojo
      Returns:
      output directory for generated sources.