mage
mage copied to clipboard
Set maven-assembly-plugin version in the pom.xml
So for the alpha server I'm setting up, I am currently trying to build and package xmage from a docker.
I figured most of the things out, but I got an error on "mvn assembly:assembly" for both Mage.Client & Mage.Server:
I checked my dev computer mvn version of maven-assembly-plugin
is 2.2-beta-5
, and I've not issue with the assembly
goal with that one. And once I've set it up to that version in the Docker build in both pom.xml
, there was no issue anymore and I was producing the expected .zip out of the build-and-package.pl script.
What is the most appropriate version of maven-assembly-plugin
, I am really no expert of maven builds, should we set the version to a working one in the pom.xml
files, or maybe support the latest maven-assembly-plugin
?
More details in #11599. Use assembly:single task instead.
Alright, so the perl files in the repo are the ones being outdated then.
Yes, perl scripts are very old. 80% of that scripts are outdated and un-used (maybe @theelk801 uses some of it for issues generation).
last time I used a perl scripts — for de-server releases (build, version bump in pom files and new cards list gen from git history).
There are makefile for “modern way” builds, so you can try to use it: https://github.com/magefree/mage/blob/master/Makefile
the only perl script I use is the card generation one, the rest don't matter to me
Uhm with assembly:single
there are no .jar for Mage.Client and Mage.Server.
I suspect I need to tweak the build-and-package.pl
a little more to use its produced .zip for the alpha server.
The strange part is that on my dev computer build-and-package.pl produces the correct .zip, but maybe because I built the project in IntelliJ and not start from clean slate.
I'll try from the Makefile. Thanks for the help.
It uses same maven commands. Make sure you build and install all projects before assembly call (mvn install skiptestsxxx
from root folder).
Well, make file uses good commands: mvn package assembly:single — must works fine.
Alright, that should works, was missing "package" in those commands too.
I'll try to start the alpha server with that build, just to confirm. By the way my aim for this whole ordeal is a nightly alpha server, so need to make sure I can automate the build & package the whole way.
Alright, I did succeed (I was also not properly changing the MageVersion number before the build).
So I'll change the build-and-package.pl
to call mvn package assembly:single -DskipTests
instead of mvn assembly:assembly
if no-one else is using those scripts.