Staging of Repository within profile ID='X' is not yet started
maven-3, nexus
Solution
Staging of snapshot versions is not allowed, you need to use release versions.
At first glance you might think that this could be done by having Nexus rewrite the pom files and rename the artifacts. But it's not that simple, the version number is often embedded in the artifacts themselves. This is particularly true of assembled artifacts such as war/ear files, you'll find the version numbers inside contained artifacts, and inside configuration files within the artifact. Even if these could be rewritten by Nexus changing the version numbers potentially changes the behavior of the artifacts. In any case, Nexus will not change staged artifacts, any changes made could potentially lead to regressions. Staged artifacts (like all artifacts deployed to Nexus) are immutable.
Consequentially, you need to use a release version when staging.
Problem
Trying to deploy on a staging repository leads on the maven side to 400 , ReasonPhrase:Bad Request and the server log contains Staging of Repository within profile ID='X' is not yet started! It makes no difference using maven-deploy-plugin or maven-release-plugin. All three leads to the error from above. My deployment user has (admin) rights to deploy to every staging profile. maven-release-plugin: ``` mvn release:stage -DstagingRepository=nexus::default::http://localhost:8081/nexus/service/local/staging/deploy/maven2 ``` If you doesn't use versions with the maven-release-plugin like SNAPSHOT qualifier and similar, nexus-staging-plugin works fine. What did I miss?