This week's book giveaway is in the OCAJP 8 forum. We're giving away four copies of OCA Java SE 8 Programmer I Study Guide and have Edward Finegan & Robert Liguori on-line! See this thread for details.
Dear Maven-experts I am a Maven newbie and encounter the following issue: I am developing a pretty simple standalone dataconversion application (with a public static void main(...) method) which imports a number of XML files, parses them and writes some of the data to a database. Nothing special... Now I want to use Maven to manage the project, define the dependencies, run the unit tests etc. This works without major problems. But I also want to be able to "deploy" the application, in the sense of running it as an executable jarfile outside Maven or Eclipse. The problem is: when I run <mvn install>, the generated jarfile contains the compiled sourcefiles, but not the libraries defined in the <dependencies> section. So it does not run. When I define the packaging as "rar" instead of "jar", a rarfile containing the dependency jarfiles (but not the compiled sourcefiles) is generated. But what I actually want is a (executable) jarfile containing BOTH the compiled sourcefiles AS WELL AS the dependencies, so it will run without the need to manually copy the libraries and setting the classpath to them... With Ant, this will not be a big problem, but with Maven... ? I think it should be a pretty straightforward action to deploy a standalone application containing all needed dependencies using Maven... Do I overlook something ? How can I do this ? Please, all info is more than welcome ! Best regards, Klaas
"What you don't know, can't help you"
SCJP (81%), SCWCD (81%), SCJD (354/400), SCBCD (85%)
That pretty much describes how a WAR works. I suppose in a pinch, you could make a WAR and rename the resulting file.
There are some differences, however. A stand-alone JAR execution doesn't add embedded jars into its classpath the way that web app servers do, and I don't know offhand if you can add meta-inf data to WARs using Maven (specifically the Main-Class item).
An IDE is no substitute for an Intelligent Developer.