Once you have downloaded and unzipped the Maven package on your machine, you could run this basic command:
mvn --versionto ensure it is up and ready.
The most common issues you could have at this time are:
- you can't see Maven from your current directory
- Maven can't see Java
Create a project
You can create a Java project from scratch running this Maven command (it is a single line, even if I split it to make it more readable):
mvn archetype:generate -DgroupId=package.name -DartifactId=app.name -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=falseI have used "helloMaven" as artifact id, and "hello" as group id. The artifact id is the root directory where all the stuff related to this you application will be stored, and the group id is the name of a package that would be created, and where a simple hallo App would be created by Maven.
Proxy issue?
Maven tries to connect to its remote repository to get what it needs and couldn't be found locally (or for a newer version of it). If you get an error here, it is often due to a proxy issue.
If you do have such problem, you should have a look at the settings.xml file in the conf directory in you Maven installation.
In the "proxies" section you should create a "proxy" block containing all the information required to go through your proxy. In its minimal form it looks something like this:
<proxy> <protocol>http</protocol> <host>your.proxy</host> <port>80</port> </proxy>When Maven works fine, you get a directory structure based in the specified artifactId, that would contain in its first level a src folder and a pom.xml
The Project Object Model (if you wonder what pom stands for) XML that I got is:
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>hello</groupId> <artifactId>helloMaven</artifactId> <packaging>jar</packaging> <version>1.0-SNAPSHOT</version> <name>helloMaven</name> <url>http://maven.apache.org</url> <dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>3.8.1</version> <scope>test</scope> </dependency> </dependencies> </project>Project build
To build our project we run:
mvn packageThe result is published in the "target" folder. And, if we had no error, we can run our application in this way:
java -cp target/helloMaven-1.0-SNAPSHOT.jar hello.AppNotice that the JAR name is built putting together the artifact id and the version field, as stored in the POM.