Closed rmuir closed 5 months ago
Eh. This is something that wasn't there in previous gradle versions. Now it's a bit paranoid about inputs/outputs overlapping because of caches (I think...). The suggestions it gives are not acceptable because we don't want that task to always run. The mustRunAfter is the closest to what I think is right... but it assumes regenerate and compilation run in the same execution cycle, which I don't think we "support"? I'm not sure what can be done about it.
We can doc the workaround as a possible solution. When I run into trouble I just go to the help/
Could you leave this issue open for me but add a comment to the help file for now, @rmuir ? I'll take another look at it but Easter holidays are quite intense in this part of the world so I need to find a time slot.
I pushed https://github.com/apache/lucene/commit/e2110e0b8e8a38d93c387db9d0d67fb4fe577181 for now. Enjoy your holidays, there's no urgency to this, I just didn't want anyone else to struggle debugging it
Thank you. I'll get back to this and will try to make it work again.
Description
While working on #13239, I did find another pre-existing condition with
gradlew regenerate
besides the groovy version not being able to read java 21 .class files.I think it is new pickiness of the gradle version we are on, that we've just yet to notice until now. it does not like something about how our tasks depend on each other:
It isn't just this one task nor is it just lucene-core. If you try excluding troublesome tasks such as FOR generation, then you'll just hit it in StandardTokenizer, exclude that, and you'll just hit the same issue in lucene-analyzers with more tokenizers there.
NOTE: There's a workaround though for now, I moved past the issue like this: