MapStruct is a Java based library, so the very first requirement is to have JDK installed on your machine.
You can download the latest version of SDK from Oracle's Java site − Java SE Downloads. You will find instructions for installing JDK in downloaded files, follow the given instructions to install and configure the setup. Finally set PATH and JAVA_HOME environment variables to refer to the directory that contains java and javac, typically java_install_dir/bin and java_install_dir respectively.
If you are running Windows and have installed the JDK in C:\jdk-9.0.1, you would have to put the following line in your C:\autoexec.bat file.
set PATH=C:\jdk-9.0.1\bin;%PATH% set JAVA_HOME=C:\jdk-9.0.1
Alternatively, on Windows NT/2000/XP, you will have to right-click on My Computer, select Properties → Advanced → Environment Variables. Then, you will have to update the PATH value and click the OK button.
On Unix (Solaris, Linux, etc.), if the SDK is installed in /usr/local/jdk-9.0.1 and you use the C shell, you will have to put the following into your .cshrc file.
setenv PATH /usr/local/jdk-9.0.1/bin:$PATH setenv JAVA_HOME /usr/local/jdk-9.0.1
Alternatively, if you use an Integrated Development Environment (IDE) like Borland JBuilder, Eclipse, IntelliJ IDEA, or Sun ONE Studio, you will have to compile and run a simple program to confirm that the IDE knows where you have installed Java. Otherwise, you will have to carry out a proper setup as given in the document of the IDE.
Download following jars from MVNRepository and use them in your classpath.
Make sure you set your CLASSPATH variable on this directory properly otherwise you will face a problem while running your application.
All the examples in this tutorial have been written using Eclipse IDE. So we would suggest you should have the latest version of Eclipse installed on your machine.
To install Eclipse IDE, download the latest Eclipse binaries from https://www.eclipse.org/downloads/. Once you download the installation, unpack the binary distribution into a convenient location. For example, in C:\eclipse on Windows, or /usr/local/eclipse on Linux/Unix and finally set PATH variable appropriately.
Eclipse can be started by executing the following commands on Windows machine, or you can simply double-click on eclipse.exe
Eclipse can be started by executing the following commands on Unix (Solaris, Linux, etc.) machine −
After a successful startup, if everything is fine then it should display the following result −
C:\MVN>mvn archetype:generate -DgroupId = com.tutorialspoint.mapping -DartifactId = mapping -DarchetypeArtifactId = maven-archetype-quickstart -DinteractiveMode = false
It will create a maven project. Now update the pom.xml file as follows −
<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>com.tutorialspoint.mapping</groupId> <artifactId>mapping</artifactId> <packaging>jar</packaging> <version>1.0-SNAPSHOT</version> <name>mapping</name> <url>http://maven.apache.org</url> <dependencies> <dependency> <groupId>org.junit.jupiter</groupId> <artifactId>junit-jupiter-engine</artifactId> <version>5.0.0</version> <scope>test</scope> </dependency> <dependency> <groupId>org.mapstruct</groupId> <artifactId>mapstruct</artifactId> <version>1.3.1.Final</version> </dependency> </dependencies> <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>3.8.1</version> <configuration> <source>1.9</source> <target>1.9</target> <annotationProcessorPaths> <path> <groupId>org.mapstruct</groupId> <artifactId>mapstruct-processor</artifactId> <version>1.3.1.Final</version> </path> </annotationProcessorPaths> </configuration> </plugin> </plugins> </build> </project>
Run the following command to update maven dependencies and build project.
Once command is successful. Import the maven based mediaplayer project in Eclipse as a maven project. Rest Eclipse will handle.