2012-04-26 31 views
7

Tôi có một bản dựng dài với nhiều bước, bổ sung và thực thi được định cấu hình trong khoảng 30 poms thuộc một dự án mô đun phức tạp. Khi quá trình xây dựng diễn ra quá nhiều (2h), tôi muốn sắp xếp nó một chút, vì tôi muốn maven liệt kê tất cả các bước mà nó sẽ thực hiện mà không cần thực hiện nó. Một cái gì đó như:Kế hoạch thực hiện Maven

$ mvn --dry-run clean 
[INFO] Reactor Build Order: 
[INFO] 
[INFO] Main project 
[INFO] Module#1 
[INFO] Module#2 
[..] 
[INFO]                   
[INFO] ------------------------------------------------------------------------ 
[INFO] Building Main Project 
[INFO] ------------------------------------------------------------------------ 
[INFO] 
[INFO] --- maven-clean-plugin:2.4.1:clean (default-clean) @ main --- 
[INFO] 
[INFO]                   
[INFO] ------------------------------------------------------------------------ 
[INFO] Building Module#1 
[INFO] ------------------------------------------------------------------------ 
[INFO] 
[INFO] --- maven-clean-plugin:2.4.1:clean (default-clean) @ module1 --- 
[INFO] 
[INFO] ------------------------------------------------------------------------ 
[INFO] BUILD SUCCESS 
[INFO] ------------------------------------------------------------------------ 
[INFO] Total time: 0:01.020s 
[INFO] Finished at: Thu Apr 26 09:56:14 CEST 2012 
[INFO] Final Memory: 198M/379M 
[INFO] ------------------------------------------------------------------------ 

Có cách nào để có thông tin như vậy mà không cần tôi đào trong một vài megs tệp nhật ký không?

+1

Tôi có không đi qua một plugin có thể làm điều này. Nhưng tìm kiếm nhanh cho thấy có một lớp trong Maven API được gọi là [MavenExecutionPlan] (http://maven.apache.org/ref/3.0.4/maven-core/apidocs/org/apache/maven/lifecycle/MavenExecutionPlan.html). Có lẽ bạn có thể sử dụng nó bằng cách nào đó. –

Trả lời

1

Vì dường như không có cách nào OOTB để làm điều đó, tôi đã kết thúc bằng văn bản plan-maven-plugin. Nó cho phép bạn cuộn kế hoạch cung cấp các goals tham số:

mvn plan:plan -Dgoals=clean,javadoc:jar,sources:jar,package,gpg:sign,install 

hoặc để thực hiện nó như một phần của việc xây dựng thông thường:

mvn plan:plan clean javadoc:jar sources:jar package gpg:sign install 

Mẫu đầu ra:

$ mvn plan:plan clean javadoc:javadoc package install site:site 
[...] 
[INFO] --- plan-maven-plugin:1.1:plan (default-cli) @ plan-maven-plugin --- 
[INFO] 
[INFO] Current lifecycle: 
[INFO]  pre-clean 
[INFO]  clean 
[INFO]  post-clean 
[INFO]  validate 
[INFO]  initialize 
[INFO]  generate-sources 
[INFO]  process-sources 
[INFO]  generate-resources 
[INFO]  process-resources 
[INFO]  compile 
[INFO]  process-classes 
[INFO]  generate-test-sources 
[INFO]  process-test-sources 
[INFO]  generate-test-resources 
[INFO]  process-test-resources 
[INFO]  test-compile 
[INFO]  process-test-classes 
[INFO]  test 
[INFO]  prepare-package 
[INFO]  package 
[INFO]  pre-integration-test 
[INFO]  integration-test 
[INFO]  post-integration-test 
[INFO]  verify 
[INFO]  install 
[INFO]  deploy 
[INFO] 
[INFO] Execution plan: 
[INFO]  [-] tk.skuro:plan-maven-plugin:plan (default-cli) 
[INFO]  [clean] org.apache.maven.plugins:maven-clean-plugin:clean (default-clean) 
[INFO]  [-] org.apache.maven.plugins:maven-javadoc-plugin:javadoc (default-cli) 
[INFO]  [validate] org.apache.maven.plugins:maven-enforcer-plugin:enforce (enforce-maven) 
[INFO]  [generate-resources] org.apache.maven.plugins:maven-plugin-plugin:descriptor (default-descriptor) 
[INFO]  [process-resources] org.apache.maven.plugins:maven-resources-plugin:resources (default-resources) 
[INFO]  [compile] org.apache.maven.plugins:maven-compiler-plugin:compile (default-compile) 
[INFO]  [process-test-resources] org.apache.maven.plugins:maven-resources-plugin:testResources (default-testResources) 
[INFO]  [test-compile] org.apache.maven.plugins:maven-compiler-plugin:testCompile (default-testCompile) 
[INFO]  [test] org.apache.maven.plugins:maven-surefire-plugin:test (default-test) 
[INFO]  [package] org.apache.maven.plugins:maven-jar-plugin:jar (default-jar) 
[INFO]  [package] org.apache.maven.plugins:maven-plugin-plugin:addPluginArtifactMetadata (default-addPluginArtifactMetadata) 
[INFO]  [validate] org.apache.maven.plugins:maven-enforcer-plugin:enforce (enforce-maven) 
[INFO]  [generate-resources] org.apache.maven.plugins:maven-plugin-plugin:descriptor (default-descriptor) 
[INFO]  [process-resources] org.apache.maven.plugins:maven-resources-plugin:resources (default-resources) 
[INFO]  [compile] org.apache.maven.plugins:maven-compiler-plugin:compile (default-compile) 
[INFO]  [process-test-resources] org.apache.maven.plugins:maven-resources-plugin:testResources (default-testResources) 
[INFO]  [test-compile] org.apache.maven.plugins:maven-compiler-plugin:testCompile (default-testCompile) 
[INFO]  [test] org.apache.maven.plugins:maven-surefire-plugin:test (default-test) 
[INFO]  [package] org.apache.maven.plugins:maven-jar-plugin:jar (default-jar) 
[INFO]  [package] org.apache.maven.plugins:maven-plugin-plugin:addPluginArtifactMetadata (default-addPluginArtifactMetadata) 
[INFO]  [install] org.apache.maven.plugins:maven-install-plugin:install (default-install) 
[INFO]  [-] org.apache.maven.plugins:maven-site-plugin:site (default-cli) 
[INFO] 
+0

Cảm ơn các plugin tuyệt vời. Giúp đỡ rất nhiều :) –

Các vấn đề liên quan