2012-03-31 6 views
5

Я пытаюсь заставить Грейд создать банку по-своему. Я написал свою собственную задачу Gradle (отдельный класс), чтобы сделать это, и теперь я хочу, чтобы заменить задачу по умолчанию jar с ним, так что:Как правильно заменить задачу «jar»?

  • архив ВСЕГДА генерируется с моей новой задачей и никогда с старой jar задача
  • моя новая задача имеет такие же отношения с другими задачами, как задача по умолчанию jar - это зависит от classes задачи, build задачи использует его и т.д.
  • Я хотел бы мою задачу не должен использоваться, когда это UP-TO-DATE (как и по умолчанию jar)

Я изо всех сил пытаюсь это сделать, и у меня много проблем для достижения этого. Например, мне не удалось заставить задачу build всегда использовать мою новую задачу.

Я был бы очень признателен, если бы кто-то мог поддержать меня с короткой инструкцией.

ответ

2

Это должно работать:

jar { 
    // reset actions 
    actions = [] 
    // add your action that performs the work based 
    // on the configuration (e.g. 'source') of this task 
    doLast { ... } 
} 
+0

Спасибо, что очень помогает. Старый 'jar' больше никогда не выполняется. Однако задача выполняется всегда, даже если она должна быть «UP-TO-DATE». Как я могу это предотвратить? – ghik

+1

Если вы используете '--info', Gradle расскажет вам, почему он считает, что задача не обновлена. –

Смежные вопросы