Before you read this post, check out:
Our recent changes to the Maven archetype, including the inception of the jive-parent-pom, are aimed at making it easier to do those mundane, yet error-prone, tasks around project creation, as well as alerting you to new changes to dependencies and build configuration. As I mentioned in my last post, your build will tell you if there is a newer release of the jive-parent-pom for your version of Jive. While this is all well and good, it doesn't help you upgrade your custom project or plugin. For instance, if you want to upgrade from 22.214.171.124 to 126.96.36.199, you would have to change the version of the jive-parent-pom dependency in the <parent> element of your project's pom.xml file, somewhat blindly, from 188.8.131.52-1 to 184.108.40.206-0, build the project, and see if you needed to change the version again to something like 220.127.116.11-1. While this is still easier than search for the proper jive, EAE, search, Spring and AspectJ versions for the version of Jive you're upgrading to, it's still not ideal. That is about to change.
The jive:upgrade goal is here!
This goal can only be executed from your root project, or your independently-created plugin (not within a Jive project). Just run the following command:
You will be prompted to type the Jive version to which you want to upgrade.
All you have to do is enter the full Jive version. The goal will then automatically detect the latest jive-parent-pom release for that version of Jive, and change the version within your project's pom.xml file.
[INFO] Applying com.jivesoftware.maven:jive-parent-pom version 18.104.22.168-3 to /Users/ryan.king/code/test/upgrade-me-again/pom.xml
[INFO] Applying com.jivesoftware.maven:jive-parent-pom version 22.214.171.124-3 to /Users/ryan.king/code/test/upgrade-me-again/run-services/pom.xml
[INFO] Be aware that you may need to change the contents of the following files:
While this sounds perfect, there is a caveat. Sometimes, upgrading from one version of Jive to another requires that you change some files. Once you complete this process, you may need to make those changes.
Stay tuned, as more changes are coming!
As always, post your comments and feedback here.