Nexus error updating group repository metadata
Generating proper Maven metadata is also required in order to produce proper Maven indexing (which I've roughly described here).This is produced by artifact repository managers and is used by IDE-s and other artifact repository managers.In a way I might agree that this is only for snapshots, but...If this is how it works in the Maven world and you are using and producing Maven dependencies (after all), this is what you need to follow. If you would like to discuss this further, I would recommend contacting the Maven Developers distribution list.If these files are not described as per the Maven Metadata rules, the tool fails to find the timestamped artifacts and, consequently, fails. Like I was saying my earlier in messages, Maven 2.2.1 reached an end of life on 2009-11-08, as described here. The question here is: how much of a tolerance period do you need to be giving before announcing that you no longer support it?What Gradle needs to be doing is this: Once we understand the implications of the change, we can decide if it's best to just change the current behaviour, or if we'll require some more sophisticated modelling to allow the user to specify the target 'version' or the published maven repository. I understand that you would like to be as backward-compatible, as possible, but at some point you need to drop old stuff in favour of more modern improvements.
So, basically, by not properly supporting this there are many things that would be affected. can be accepted by most maven clients - they know repository drops the support of non-timestamped snapshots, so they fetch the metadata, get the timestamp and build Number, then concatenate them and request that artifact.
In our case, we have a third-party continuous deployment product which expects valid Maven metadata in order to resolve the snapshot artifacts and then deploy them to the respective environments.
Teams are resorting to the really unorthodox approach of building their code with Gradle and then deploying it with Maven using the goal, just so that they would have properly generated Maven Metadata.
It might be hours before this happens (usually this is scheduled once every 24 hrs, especially in large organizations with hundreds of repositories, as this operation can take quite some time to finish when executed against an entire repository).
The problem is that when you deploy the artifacts with Gradle to a Maven 2 repository in Nexus, other build tools might have dependencies on these artifacts.