DZone
Thanks for visiting DZone today,
Edit Profile
  • Manage Email Subscriptions
  • How to Post to DZone
  • Article Submission Guidelines
Sign Out View Profile
  • Post an Article
  • Manage My Drafts
Newsletter
Log In / Join
Refcards Trend Reports
Events Video Library
Refcards
Trend Reports

Events

View Events Video Library

Related

  • Running a Self-Hosted WAF in Production: Practical Lessons From SafeLine
  • Two Engines, One Query: DuckDB Inside Neo4j
  • Testing Java and Spring Applications With Kotlin: Low-Risk to Adoption
  • Wasm Inside Neo4j: Building the Example That Didn't Exist

Trending

  • A Reference Architecture for Constrained AI-Assisted Design
  • To Switch, or Not to Switch the AI Model
  • Mistaking Code Production for Engineering Progress: AI Productivity Myths Part 1
  • Hot-Reloading Kubernetes Secrets and ConfigMaps in Go With mamori (No Pod Restarts)

Draft This article hasn't been published, so readers can't see it.

In moderation This article is waiting for review, so readers can't see it yet.

Deleted This article has been deleted, so readers can't see it.

  1. DZone
  2. Coding
  3. Frameworks
  4. Importing a Maven Project in Eclipse

Importing a Maven Project in Eclipse

By 
Alejandro Duarte
DZone Core CORE ·
Dec. 17, 19 · Tutorial
Post on X (opens in a new tab) Share on LinkedIn (opens in a new tab)
31.3K Views

Join the DZone community Save articles, join the discussion, and download Refcards and Trend Reports with a free account.

Join for free Already a member? Log in

This tutorial explains how to import an existing Maven project into Eclipse and how to create a run configuration for a Maven goal. This is useful, for example, when using the Jetty Maven plugin that allows you to quickly deploy and run a Java web application using this popular server.

Maven is a project management tool that goes beyond dependency management. See Learning Maven Concepts for more.

Download an Existing Maven Project

This tutorial uses a Maven archetype that generates a Java web application with a preconfigured Jetty Maven Plugin in it:

Shell
 




x


 
1
mvn -B archetype:generate -DarchetypeGroupId=com.vaadin -DarchetypeArtifactId=vaadin-archetype-application -DarchetypeVersion=LATEST -DgroupId=org.test -DartifactId=webapp -Dversion=1.0-SNAPSHOT



If you prefer, you can generate a ZIP file with the project at https://vaadin.com/start/latest or https://start.vaadin.com. Make sure you select the Plain Java Servlet option before downloading the project.

You may also like: Building Java Applications With Maven.

The project should include a directory with a Maven project in it:

Maven project directory

You need Node.js installed on your computer to compile the example application.


Import the Project


  1. In Eclipse, select File > Import…
  2. In the import window, expand Maven, select Existing Maven Projects, and click Next: Import window
  3. Click Browse, and select the directory that contains the pom.xml file of the project you want to import: Select the root directory

    If you are importing a multi-module Maven project, make sure you select the correct project to import. You will typically want to select all the projects.
  4. Click Finish. Eclipse will import the project and start downloading the required resources.

Running Maven goals

Eclipse has built-in integration with Maven. You can run common commands, such as  mvn install or  mvn jetty:run without having to leave the IDE.

The most common commands are available in the Run As and Debug As folders when you right-click the project in Project Explorer view. For example, to run  mvn install, right-click the project and select Run As > Maven install:

Maven install

You can find additional useful options in the Maven submenu.

You’ll see how Eclipse executes the  install build phase (and all the previous phases in the Maven’s default lifecycle) that download dependencies from the repositories and copies the generated artifacts into your local Maven repository among other things.

Creating a Run Configuration

A run configuration is a shortcut to run a specific task from within the IDE. Let’s create a run configuration for the  jetty:run  Maven goal to make it simpler to run the web application from the IDE.

If you are using Spring Boot, use the spring-boot:run goal.


  • Right-click the project in the Project Explorer view and select Run As > Maven build.
  • In the Edit Configuration window, for Goals type jetty:run and optionally give the run configuration a new name: jetty:run configuration
  • Click Run to save the new configuration and execute it. You should see the Console view with the log generated by the application and the Jetty server.
  • To stop the server, click the Terminate icon in the Console view: Terminate You can deploy and run the web application by clicking the run (or the debug) icon in the toolbar and selecting the corresponding run or debug configuration:


Toolbar

If you use the Vaadin project used in the tutorial, you can invoke the web application at http://localhost:8080.

That’s it. Now you can use Eclipse to develop your Maven application. To learn more about:

  • How to develop a Java web application without coding JavaScript or HTML, see Vaadin quick start tutorial.

Further Reading

  • Beginner's Guide to Creating a Maven Plugin.
  • 10 Effective Tips on Using Maven.
  • Gradle vs. Maven.
Apache Maven Eclipse Web application

Published at DZone with permission of Alejandro Duarte. See the original article here.

Opinions expressed by DZone contributors are their own.

Related

  • Running a Self-Hosted WAF in Production: Practical Lessons From SafeLine
  • Two Engines, One Query: DuckDB Inside Neo4j
  • Testing Java and Spring Applications With Kotlin: Low-Risk to Adoption
  • Wasm Inside Neo4j: Building the Example That Didn't Exist

Partner Resources

×

Comments

Loading comments

The comments didn't load

Please try again in a moment.

Likes

Loading

The next likes didn't load. Please try again.

The likes didn't load

Please try again in a moment.

See who liked this

Log in or join DZone for free to see who liked this article.

Log in Join for free
  • RSS
  • X
  • Facebook

ABOUT US

  • About DZone
  • Support and feedback
  • Community research

ADVERTISE

  • Advertise with DZone

CONTRIBUTE ON DZONE

  • Article Submission Guidelines
  • Become a Contributor
  • Core Program
  • Visit the Writers' Zone

LEGAL

  • Terms of Service
  • Privacy Policy

CONTACT US

  • 3343 Perimeter Hill Drive
  • Suite 215
  • Nashville, TN 37211
  • [email protected]

Let's be friends:

  • RSS
  • X
  • Facebook