I am a new convert to gradle. Most of the tasks work fine. However I see that the war task is always skipped. When I run in the debug mode, I see the following logs -
09:12:34.889 [LIFECYCLE] [class org.gradle.internal.buildevents.TaskExecutionLogger] :war 09:12:34.889 [DEBUG] [org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecuter] Starting to execute task ':war' 09:12:34.889 [INFO] [org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter] Skipping task ':war' as task onlyIf is false. 09:12:34.889 [DEBUG] [org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecuter] Finished executing task ':war' 09:12:34.889 [LIFECYCLE] [class org.gradle.internal.buildevents.TaskExecutionLogger] :war SKIPPED
I am not sure why onlyIf is false. I did search on internet. But I did not find anything related.
Here is my gradle file -
buildscript { ext { springBootVersion = '2.0.0.M2' } repositories { mavenCentral() maven { url "https://repo.spring.io/snapshot" } maven { url "https://repo.spring.io/milestone" } } dependencies { classpath("org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}") } } // Apply the java-library plugin to add support for Java Library apply plugin: 'java-library' apply plugin: 'eclipse' apply plugin: 'org.springframework.boot' apply plugin: 'io.spring.dependency-management' apply plugin: 'war' apply plugin: 'checkstyle' apply plugin: 'pmd' apply plugin: 'findbugs' apply plugin: 'jacoco' version = '0.0.1-SNAPSHOT' sourceCompatibility = 1.8 repositories { jcenter() mavenCentral() maven { url "https://repo.spring.io/snapshot" } maven { url "https://repo.spring.io/milestone" } } dependencies { compile('org.springframework.boot:spring-boot-starter') compile("org.springframework.boot:spring-boot-starter-web") compile("org.springframework.retry:spring-retry:1.2.1.RELEASE") compile("org.springframework.data:spring-data-cassandra:2.0.0.M4") compile("io.reactivex.rxjava2:rxjava:2.1.1") //compile("javax.persistence:persistence-api:1.0.2") //compile("org.hibernate.javax.persistence:hibernate-jpa-2.0-api:1.0.1.Final") compile("org.springframework.boot:spring-boot-starter-data-jpa") compile("com.zaxxer:HikariCP:2.6.0") // Test Dependencies testCompile("org.springframework.boot:spring-boot-starter-test") testCompile("org.powermock:powermock-mockito-release-full:1.6.4") testCompile("org.mockito:mockito-core:2.0.3-beta") testCompile("org.cassandraunit:cassandra-unit:3.1.3.2") testCompile("org.cassandraunit:cassandra-unit-spring:2.2.2.1") testCompile("com.h2database:h2:1.4.196") // This dependency is exported to consumers, that is to say found on their compile classpath. api 'org.apache.commons:commons-math3:3.6.1' // This dependency is used internally, and not exposed to consumers on their own compile classpath. implementation 'com.google.guava:guava:21.0' testImplementation 'junit:junit:4.12' }
Here is the image of my project structure -
If you could help me with generating the war file that would be great.
In this case, we might skip the tests temporarily to reduce the overhead of compiling and running them. Undoubtedly, ignoring the tests can cause many serious issues. In this short tutorial, we'll learn how to skip tests when using the Gradle build tool.
In the Gradle tool window, right-click a Gradle project. From the context menu, select Tasks Activation.
You can execute multiple tasks from a single build file. Gradle can handle the build file using gradle command. This command will compile each task in such an order that they are listed and execute each task along with the dependencies using different options.
try it
war { enabled = true }
I have also faced same issue with jar task, it is skipping the jar generation as it is taking the default value for enabled=false if you dont specify any external value. Same solution works for jar as well based on @Alexander Servetnik
Enrironment: SpringBoot 2.x and gradle 4.4
jar { baseName = <your-jar name> enabled=true }
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With