Alex Rivera | Logout

How to properly replace Gradle 'jar' task?

Asked 2012-03-31T11:56:47.497
8

I am trying to force Gradle to create jar my own way. I wrote my own Gradle task (separate class) to do this and now I want to replace the default jar task with it, so that:

  • the archive is ALWAYS generated with my new task and NEVER with the old jar task
  • my new task has the same relationship with other tasks as the default jar task - it depends on classes task, the build task uses it, etc.
  • I would like my task not to be invoked when it's UP-TO-DATE (just like the default jar)

I'm struggling to do this and I'm having a lot of trouble to achieve this. For example, I was unable to force the build task to always use my new task.

I would really appreciate it if someone could support me with a short howto.

Edit
Report

1 Answer

4

This should work:

jar {
    // reset actions
    actions = []
    // add your action that performs the work based
    // on the configuration (e.g. 'source') of this task
    doLast { ... }
}
answered 2012-03-31T13:28:15.577

Your Answer