Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to run a Maven project from Eclipse?

I am trying to run a simple Java project. I had created a project using the 'Maven Project' type. I have one main class called 'TestMain'. When I tried to run the project using right click -> run, there was no menu to run the application as 'Run As Java Application'. I am wondering where that option has gone.

Can anyone please help me to run the Java application?

like image 928
Shekhar Avatar asked Jan 27 '11 18:01

Shekhar


2 Answers

Well, you need to incorporate exec-maven-plugin, this plug-in performs the same thing that you do on command prompt when you type in java -cp .;jarpaths TestMain. You can pass argument and define which phase (test, package, integration, verify, or deploy), you want this plug-in to call your main class.

You need to add this plug-in under <build> tag and specify parameters. For example

   <project>     ...     ...     <build>      <plugins>       <plugin>        <groupId>org.codehaus.mojo</groupId>        <artifactId>exec-maven-plugin</artifactId>        <version>1.1.1</version>        <executions>         <execution>          <phase>test</phase>          <goals>           <goal>java</goal>          </goals>          <configuration>           <mainClass>my.company.name.packageName.TestMain</mainClass>           <arguments>            <argument>myArg1</argument>            <argument>myArg2</argument>           </arguments>          </configuration>         </execution>        </executions>       </plugin>      </plugins>     </build>     ...     ...    </project> 

Now, if you right-click on on the project folder and do Run As > Maven Test, or Run As > Maven Package or Run As > Maven Install, the test phase will execute and so your Main class.

like image 116
Nishant Avatar answered Sep 29 '22 14:09

Nishant


(Alt + Shift + X) , then M to Run Maven Build. You will need to specify the Maven goals you want on Run -> Run Configurations

like image 36
jhurtado Avatar answered Sep 29 '22 12:09

jhurtado