[INFO] 'compile' is a phase corresponding to this plugin: org.apache.maven.plugins:maven-compiler-plugin:3.1:compile
It is a part of the lifecycle for the POM packaging 'jar'. This lifecycle includes the following phases: * validate: Not defined * initialize: Not defined * generate-sources: Not defined * process-sources: Not defined * generate-resources: Not defined * process-resources: org.apache.maven.plugins:maven-resources-plugin:2.6:resources * compile: org.apache.maven.plugins:maven-compiler-plugin:3.1:compile * process-classes: Not defined * generate-test-sources: Not defined * process-test-sources: Not defined * generate-test-resources: Not defined * process-test-resources: org.apache.maven.plugins:maven-resources-plugin:2.6:testResources * test-compile: org.apache.maven.plugins:maven-compiler-plugin:3.1:testCompile * process-test-classes: Not defined * test: org.apache.maven.plugins:maven-surefire-plugin:2.12.4:test * prepare-package: Not defined * package: org.apache.maven.plugins:maven-jar-plugin:2.4:jar * pre-integration-test: Not defined * integration-test: Not defined * post-integration-test: Not defined * verify: Not defined * install: org.apache.maven.plugins:maven-install-plugin:2.4:install * deploy: org.apache.maven.plugins:maven-deploy-plugin:2.7:deploy
编写一个插件
编写一个插件大体可以分为以下几步:
step1:新建一个 maven-archetype-mojo
step2:添加一个 mojo 类
1 2 3 4 5 6
@Mojo(name = "build-glmapper", defaultPhase = LifecyclePhase.PACKAGE, threadSafe = true, requiresDependencyResolution = ResolutionScope.RUNTIME, requiresDependencyCollection = ResolutionScope.RUNTIME) publicclassRepackageMojoextendsAbstractMojo { publicvoidexecute()throws MojoExecutionException, MojoFailureException { getLog().info("this is a test case for mojo"); } }