1. Warnings and deprecations are not shown by default.
2. Documentation shows use of <compilerArgument> with mulitple arguments in a
single element:
<compilerArgument>-foo -bar</compilerArgument>
which is a bald-faced lie. Only a single argument is allowed inside a
<compilerArgument> element. Web search turns up "helpful" advice to use
multiple elements:
<compilerArgument>-foo</compilerArgument>
<compilerArgument>-bar</compilerArgument>
Fair enough, and also a bald-faced lie. After spending a bunch of time
debugging why my compiler arguments were not working, I discovered that Maven
was just (silently) using the last one and ignoring/overwriting all of the
previous arguments.
I had noticed while poring over the documentation that it was also possible to
use the so-called "Map version" (whatever that means), which uses this
completely fucking stupid syntax:
<compilerArguments>
<foo/>
<bar/>
</compilerArguments>
Why is that syntax completely fucking stupid, you might ask? Well, dear reader,
because the arguments that I'm actually passing end up looking like this:
<compilerArguments>
<Xlint/>
<Xlint:-serial/>
</compilerArguments>
which is a case study in how not to represent information in XML. I didn't even
try that originally because I was sure that it would not work, given the wacky
non-[a-zA-z]+ nature of the argument I needed to supply. The fact that it does
work gives me the fear.
You might wonder if the following form would provide satisfaction:
<compilerArguments>
<compilerArgument>-Xlint</compilerArgument>
<compilerArgument>-Xlint:-serial</compilerArgument>
</compilerArguments>
Other than being absurdly verbose, it seems right in line with The Maven Way
(tm). However, that results in -compilerArgument=-Xlint and
-compilerArgument=-Xlint:-serial being passed to the compiler. Hilarity
naturally ensues.
git-svn-id: https://samskivert.googlecode.com/svn/trunk@2859 6335cc39-0255-0410-8fd6-9bcaacd3b74c
line count of the build.xml file, but I suppose that's just because XML is
absurdly verbose (and Maven annoyingly chose to do things like
<quiet>true</quiet> instead of a quiet="true" attribute). I wonder if there's a
Maven plugin that allows you to specify your pom.xml in YAML or some less
verbose format and which automatically converts it to XML. That'd probably cut
the line count by 2/3.
git-svn-id: https://samskivert.googlecode.com/svn/trunk@2853 6335cc39-0255-0410-8fd6-9bcaacd3b74c
publish our bits to the Maven central repository, which means we need to gird
our loins and wade into the ninth circle of hell: a Mavenized build.
git-svn-id: https://samskivert.googlecode.com/svn/trunk@2847 6335cc39-0255-0410-8fd6-9bcaacd3b74c