Panel |
---|
borderStyle | solid |
---|
title | Table of contents |
---|
|
Table of Contents |
---|
minLevel | 1 |
---|
maxLevel | 3 |
---|
includePages | true |
---|
indent | 20px |
---|
style | disc |
---|
|
|
Installation
Windows:
- Unzip ZIP-file to an appropriate folder (C:\Program Files): New folder is "apache-maven-2.1.0"
Linux:
- Unzip tar.gz-package
Code Block |
---|
title | Terminal |
---|
borderStyle | solid |
---|
|
# cd /usr/local/bin/
# tar xvfz /home/ralf/DOWNLOADS/apache-maven-2.2.1-bin.tar.gz
|
- New folder is "/usr/local/bin/apache-maven-2.2.1"
Configuration
- Add "bin" directory to PATH variable
...
- Start - Settings - Control Panel - System - Advanced - Environment Variables - System variables
- "Path" - Edit: (add at the beginning of the line): C:\Program Files\apache-maven-2.1.0\bin;...Maven configuration occurs at 3 levels:
- Project - most static configuration occurs in pom.xml, should inherit from a company-wide parent pom.xml
- Installation - this is configuration added once for a Maven installation
User - this is configuration specific to a particular user (located at "${user.home}/.m2/settings.xml").
Ubuntu:
Code Block |
---|
title | Terminal |
---|
borderStyle | solid |
---|
|
# nano /etc/environment
...
PATH="/usr/local/bin/apache-maven-2.2.1/bin:..."
# source /etc/environment
|
- User - create directory .m2 (located at "${user.home}/). Copy the default settings.xml coming with maven to this location:
Windows
Code Block |
---|
title | Command Prompt |
---|
borderStyle | solid |
---|
|
C:\> mkdir c:\Documents and Settings\<your_username>\.m2
C:\> copy "c:\Program Files\apache-maven-2.1.0\conf\settings.xml" "c:\Documents and Settings\<your_username>\.m2\"
1 file(s) copied.
|
Linux:
Code Block |
---|
title | Terminal |
---|
borderStyle | solid |
---|
|
$ cd
$ mkdir .m2
$ cp /usr/local/bin/apache-maven-2.2.1/conf/settings.xml .m2/
|
- Maven configuration occurs at 3 levels:
- Project - most static configuration occurs in pom.xml, should inherit from a company-wide parent pom.xml
- Installation - this is configuration added once for a Maven installation
- User - this is configuration specific to a particular user (located at "${user.home}/.m2/settings.xml").
Configuration at a "Global Level" (for all users on a machine) can be done in "${maven.home}/conf/settings.xml"
...
Code Block |
---|
title | File ${user.home}/.m2/settings.xml |
---|
| | | = |
}
<settings>
...
<localRepository>C:/Documents and Settings/<your_username>/.m2/repository</localRepository>
...
</settings>
|
...
Code Block |
---|
title | File ${user.home}/.m2/settings.xml |
---|
| | | = |
}
<settings>
...
<proxies>
<proxy>
<id>_location name_</id>
<active>true</active>
<protocol>http</protocol>
<host>_internal proxy address_</host>
<port>_proxy port_</port>
<username>{your_proxyuser}</username>
<password>{your_proxypassword}</password>
<nonProxyHosts>localhost</nonProxyHosts>
</proxy>
</proxies>
...
</settings>
|
...
Using an intranet mirror repository
Behind the firewall of a company's network it is useful to set up a central repository mirror server (e.g. opensource product "Archiva").
...
Code Block |
---|
title | File ${user.home}/.m2/settings.xml |
---|
| | | = |
}
<mirrors>
...
<mirror>
<id>archiva.central</id>
<mirrorOf>central</mirrorOf>
<name>Archiva mirror of central Maven repository.</name>
<url>http://_server_address_and_port_/archiva/repository/internal/</url>
</mirror>
...
</mirrors>
|
...
Code Block |
---|
title | Command Prompt |
---|
borderStyle | solid |
---|
|
C:\>mvn
[INFO] Scanning for projects...
[INFO] ------------------------------------------------------------------------
[ERROR] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO]
You must specify at least one goal or lifecycle phase to perform build steps.
The following list illustrates some commonly used build commands:
mvn clean
Deletes any build output (e.g. class files or JARs).
mvn test
Runs the unit tests for the project.
mvn install
Copies the project artifacts into your local repository.
mvn deploy
Copies the project artifacts into the remote repository.
mvn site
Creates project documentation (e.g. reports or Javadoc).
Please see
http://maven.apache.org/guides/introduction/introduction-to-the-lifecycle.html
for a complete description of available lifecycle phases.
Use "mvn --help" to show general usage information about Maven's command line.
[INFO] ------------------------------------------------------------------------
[INFO] For more information, run Maven with the -e switch
[INFO] ------------------------------------------------------------------------
[INFO] Total time: < 1 second
[INFO] Finished at: Wed May 06 12:37:24 CEST 2009
[INFO] Final Memory: 1M/4M
[INFO] ------------------------------------------------------------------------
C:\>
|
The output is the same under Linux:
Code Block |
---|
title | Terminal |
---|
borderStyle | solid |
---|
|
$ mvn
[INFO] Scanning for projects...
[INFO] ------------------------------------------------------------------------
...
|
This behaviour is ok, because maven does not find a pom.xml file to process and you didn't specify a goal.
...
The platform encoding is not "UTF-8". TODO ??? (set to UTF-8)
Linux:
Code Block |
---|
title | Command Prompt |
---|
borderStyle | solid |
---|
|
$ mvn -version
Apache Maven 2.2.1 (r801777; 2009-08-06 21:16:01+0200)
Java version: 1.6.0_16
Java home: /usr/lib/jvm/java-6-sun-1.6.0.16/jre
Default locale: de_DE, platform encoding: UTF-8
OS name: "linux" version: "2.6.28-15-generic" arch: "i386" Family: "unix"
|
Documentation