Class ProtocCompileCppMojo
java.lang.Object
org.apache.maven.plugin.AbstractMojo
org.xolstice.maven.plugin.protobuf.AbstractProtocMojo
org.xolstice.maven.plugin.protobuf.AbstractProtocCompileMojo
org.xolstice.maven.plugin.protobuf.ProtocCompileCppMojo
- 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 Summary
FieldsModifier and TypeFieldDescriptionprivate File
This is the directory into which the.cpp
will be created.Fields inherited from class org.xolstice.maven.plugin.protobuf.AbstractProtocCompileMojo
descriptorSetClassifier
Fields inherited from class org.xolstice.maven.plugin.protobuf.AbstractProtocMojo
attachDescriptorSet, attachProtoSources, buildContext, descriptorSetFileName, includeDependenciesInDescriptorSet, includeSourceInfoInDescriptorSet, project, projectHelper, session, toolchainManager, useArgumentFile, writeDescriptorSet
Fields inherited from interface org.apache.maven.plugin.Mojo
ROLE
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected void
addProtocBuilderParameters
(Protoc.Builder protocBuilder) Adds mojo-specific parameters to the protoc builder.protected File
Returns the output directory for generated sources.Methods inherited from class org.xolstice.maven.plugin.protobuf.AbstractProtocCompileMojo
doAttachGeneratedFiles, doAttachProtoSources, getDependencyArtifacts, getDescriptorSetOutputDirectory, getProtoSourceRoot
Methods inherited from class org.xolstice.maven.plugin.protobuf.AbstractProtocMojo
checkFilesUpToDate, checkParameters, createDependencyArtifact, createDependencyArtifact, createProtocPlugins, detectJavaHome, doAttachFiles, execute, findGeneratedFilesInDirectory, findProtoFilesInDirectories, findProtoFilesInDirectory, getDependencyArtifactFiles, getExcludes, getIncludes, hasDelta, lastModified, makeProtoPathFromJars, resolveBinaryArtifact, skipMojo, toHexString, truncatePath
Methods inherited from class org.apache.maven.plugin.AbstractMojo
getLog, getPluginContext, setLog, setPluginContext
-
Field Details
-
outputDirectory
@Parameter(required=true, property="cppOutputDirectory", defaultValue="${project.build.directory}/generated-sources/protobuf/cpp") private File outputDirectoryThis is the directory into which the.cpp
will be created.
-
-
Constructor Details
-
ProtocCompileCppMojo
public ProtocCompileCppMojo()
-
-
Method Details
-
addProtocBuilderParameters
Description copied from class:AbstractProtocMojo
Adds mojo-specific parameters to the protoc builder.- Overrides:
addProtocBuilderParameters
in classAbstractProtocMojo
- Parameters:
protocBuilder
- the builder to be modified.
-
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 classAbstractProtocMojo
- Returns:
- output directory for generated sources.
-