Alfresco recommends that you keep up-to-date with all the Maven releases. Linux distributions and package managers tend to bundle older releases and this is
the most common pitfall.
Alfresco SDK 4.0 requires Maven 3.3.0+, but you are recommended to download the latest version.
1. Download and install [Apache Maven](https://maven.apache.org/download.cgi) and make sure it is configured correctly on your path.
OS name: "mac os x", version: "10.13.4", arch: "x86_64", family: "mac"
```
### Docker
Alfresco recommends that you keep up-to-date with all the Docker releases. If you're using an older version of Windows or Mac you'll have to use
[Docker Toolbox](https://docs.docker.com/toolbox/) which has some known issues.
1. Download and install [Docker](https://docs.docker.com/install/).
2. Verify the installation of Docker.
```
$ docker -v
Docker version 18.06.1-ce, build e68fc7a
```
3.[Docker Compose](https://docs.docker.com/compose/install/) is included as part of some Docker installers. If it's not part of your installation, then
install it separately after you've installed Docker.
4. Verify the installation of Docker Compose.
```
$ docker-compose -v
docker-compose version 1.22.0, build f46880f
```
## Generate your project from the archetypes
1. After you've successfully configured Java and Maven, it's time to generate your project.
```
mvn archetype:generate -Dfilter=org.alfresco:
```
You'll be prompted to select the archetype you want. The previously available archetypes, alfresco-amp-archetype and share-amp-archetype will still show up
as an option, however these archetypes are not part of Alfresco SDK 4.0.
Attention: You'll need double quotes around the filter part if you are using Windows Powershell: mvn archetype:generate "-Dfilter=org.alfresco:".
The output looks something like this:
```
[INFO] Generating project in Interactive mode
[INFO] No archetype defined. Using maven-archetype-quickstart (org.apache.maven.archetypes:maven-archetype-quickstart:1.0)
Choose archetype:
1: remote -> org.alfresco.maven.archetype:alfresco-platform-jar-archetype (Sample project with full support for lifecycle and rapid development of Platform/Repository JARs and AMPs (Alfresco Module Packages))
2: remote -> org.alfresco.maven.archetype:alfresco-share-jar-archetype (Share project with full support for lifecycle and rapid development of JARs and AMPs (Alfresco Module
Packages))
3: remote -> org.alfresco.maven.archetype:alfresco-allinone-archetype (Sample multi-module project for All-in-One development on the Alfresco platform. Includes modules for Platform/Repository JAR and Share JAR)
7. You have successfully generated your first SDK 4.0 project.
Inside the project, you will find the `run.bat` and `run.sh` scripts. These are convenience scripts for you to quickly compile / test / run your project.
In the terminal window, use:
*`./run.sh build_start` for Mac OS X or Linux.
*`run.bat build_start` for Windows.
If this is the first time you are doing this, it will take a while for Maven to download all the required dependencies and for Docker to download all the