92 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			Groovy
		
	
	
	
	
	
			
		
		
	
	
			92 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			Groovy
		
	
	
	
	
	
| allprojects {
 | |
|     repositories {
 | |
|         jcenter() 
 | |
|     }
 | |
| }
 | |
| 
 | |
| 
 | |
| subprojects {
 | |
| 
 | |
|     version = '1.0'
 | |
| }
 | |
| 
 | |
| apply plugin: 'eclipse'
 | |
| 
 | |
| println 'This will be executed during the configuration phase.'
 | |
| 
 | |
| task configured {
 | |
|     println 'This will also be executed during the configuration phase.'
 | |
| }
 | |
| 
 | |
| task execFirstTest {
 | |
|     doLast {
 | |
|         println 'This will be executed during the execution phase.'
 | |
|     }
 | |
| }
 | |
| 
 | |
| task execSecondTest {
 | |
|     doFirst {
 | |
|       println 'This will be executed first during the execution phase.'
 | |
|     }
 | |
|     doLast {
 | |
|       println 'This will be executed last during the execution phase.'
 | |
|     }
 | |
|     println 'This will be executed during the configuration phase as well.'
 | |
| }
 | |
| 
 | |
| task welcome {
 | |
|     doLast {
 | |
|         println 'Welcome on the Baeldung!'
 | |
|     }
 | |
| }
 | |
| 
 | |
| task welcomeWithGroup {
 | |
|     group 'Sample category'
 | |
|     doLast {
 | |
|         println 'Welcome on the Baeldung!'
 | |
|     }
 | |
| }
 | |
| 
 | |
| task welcomeWithGroupAndDescription {
 | |
|     group 'Sample category'
 | |
|     description 'Tasks which shows welcome message'
 | |
|     doLast {
 | |
|         println 'Welcome on the Baeldung!'
 | |
|     }
 | |
| }
 | |
| 
 | |
| class PrintToolVersionTask extends DefaultTask {
 | |
|     String tool
 | |
| 
 | |
|     @TaskAction
 | |
|     void printToolVersion() {
 | |
|         switch (tool) {
 | |
|             case 'java':
 | |
|                 println System.getProperty("java.version")
 | |
|                 break
 | |
|             case 'groovy':
 | |
|                 println GroovySystem.version
 | |
|                 break
 | |
|             default:
 | |
|                 throw new IllegalArgumentException("Unknown tool")
 | |
|         }
 | |
|     }
 | |
| }
 | |
| 
 | |
| task printJavaVersion(type : PrintToolVersionTask) {
 | |
|     tool 'java'
 | |
| }
 | |
| 
 | |
| task printGroovyVersion(type : PrintToolVersionTask) {
 | |
|     tool 'groovy'
 | |
| }
 | |
| 
 | |
| import com.baeldung.PrintToolVersionBuildSrcTask
 | |
| 
 | |
| task printJavaVersionBuildSrc(type : PrintToolVersionBuildSrcTask) {
 | |
|     tool 'java'
 | |
| }
 | |
| 
 | |
| task printGroovyVersionBuildSrc(type : PrintToolVersionBuildSrcTask) {
 | |
|     tool 'groovy'
 | |
| } |