[GRADLE-3308] Cannot reference GeneratePom task by task instance Created: 22/Jun/15  Updated: 10/Feb/17  Resolved: 10/Feb/17

Status: Resolved
Project: Gradle
Affects Version/s: 2.4
Fix Version/s: None

Type: Bug
Reporter: René Gröschke (Inactive) Assignee: Unassigned
Resolution: Won't Fix Votes: 2


 Description   

Reproducible example:

settings.gradle:

include "sub", "sub2"

sub/build.gradle:

apply plugin: "java"

sub2/build.gradle:

apply plugin: "java"
apply plugin: "maven-publish"

dependencies

{ compile project(":sub") }

publishing {
publications {
foo(MavenPublication)

{ from components.java }

}
}

task sync(type: Sync) {
from

{ tasks["generatePomFileForFooPublication"] }

into "bar"
}

build.dependsOn(sync)

This works up until 2.3, but in 2.4 gradlew tasks fails as shown below.

Here are a few ways to make the problem go away (none of which is adequate of course):

Change apply plugin: "java" to apply plugin: "java-base" in sub/build.gradle
Remove the dependency declaration in sub2/build.gradle
Remove build.dependsOn(sync) in sub2/build.gradle
How to fix this?

Thanks,
Peter



 Comments   
Comment by René Gröschke (Inactive) [ 22/Jun/15 ]

Francois_Guillot wrote:

Is it because in 2.4, with the transition to the rule based model, tasks are only created when used (i.e. directly called, or being a dependency from another task in the thask graph) ?
@mark_vieira I think you explained me sth like that in a previous thread

Comment by René Gröschke (Inactive) [ 22/Jun/15 ]

Peter Niederwieser wrote:

I’m aware of these changes, but I need a way to make this work in 2.4. The fact that gradlew sync works but gradlew tasks doesn’t makes me think this is a bug.

Comment by René Gröschke (Inactive) [ 22/Jun/15 ]

Francois_Guillot wrote:

Found the topic I was thinking about, and @luke_daley answer: https://discuss.gradle.org/t/change-of-behaviour-for-finalize-between-2-3-and-2-4-release/9564/5

Comment by Trejkaz [ 25/Oct/15 ]

We're seeing this too. We only just started on Gradle so we don't even know if our build works in 2.3... is the best advice still to downgrade?

Comment by Benjamin Walther [ 25/May/16 ]

We have the same issue, in Gradle 2.12 and 2.13. It happens non-deterministically when executing taskReport as dependency of projectReport on a multiproject, in parallel mode only.
Is there any news for a fix or workaround?
The suggested workaround with tasks.realize does not work - we experience the same behaviour as reported by Peter Niederwieser

Execution failed for task ':taskReport'.
> Exception thrown while executing model rule: tasks.addPlaceholderAction(dependencies)
> Cannot set value for model element 'tasks.dependencies' as this element is not mutable
...
Caused by: java.lang.IllegalStateException: Cannot set value for model element 'tasks.dependencies' as this element is not mutable.

and in other cases
Execution failed for task ':commons:taskReport'.
> Could not determine the dependencies of task ':foo:buildDependents'.
...
Caused by: java.lang.IllegalStateException: Cannot transition model element 'tasks.build' to state Created as it is already at state Initialized.

Comment by Benjamin Muschko [ 15/Nov/16 ]

As announced on the Gradle blog we are planning to completely migrate issues from JIRA to GitHub.

We intend to prioritize issues that are actionable and impactful while working more closely with the community. Many of our JIRA issues are inactionable or irrelevant. We would like to request your help to ensure we can appropriately prioritize JIRA issues you’ve contributed to.

Please confirm that you still advocate for your JIRA issue before December 10th, 2016 by:

  • Checking that your issues contain requisite context, impact, behaviors, and examples as described in our published guidelines.
  • Leave a comment on the JIRA issue or open a new GitHub issue confirming that the above is complete.

We look forward to collaborating with you more closely on GitHub. Thank you for your contribution to Gradle!

Comment by Benjamin Muschko [ 10/Feb/17 ]

Thanks again for reporting this issue. We haven't heard back from you after our inquiry from November 15th. We are closing this issue now. Please create an issue on GitHub if you still feel passionate about getting it resolved.

Generated at Wed Jun 30 12:45:23 CDT 2021 using Jira 8.4.2#804003-sha1:d21414fc212e3af190e92c2d2ac41299b89402cf.