【MAVEN】如何在Eclipse中创建MAVEN项目

目录结构:

contents structure [-]

  1. 1,Maven简介
  2. 2,Maven安装
    1. 2.1,下载Maven
    2. 2.2,配置环境变量
    3. 2.3,测试
  3. 3,Maven仓库
    1. 3.1,Maven仓库的工作原理
    2. 3.2,修改Maven仓库
  4. 4,Eclipse和Maven整合的配置
  5. 5,Eclispe中创建Maven项目
    1. 5.1,在Eclispe中使用Maven搭建Spring MVC
  6. 6,Eclipse中使用MAVEN管理的Web分布式开发
    1. 6.1,创建父模块
    2. 6.2,创建子模块

1,MAVEN简介

MAVEN是一个项目构建工具,参与项目创建、导入jar包、编译、发布、测试、打包等过程。它的使用方式有两种:用户命令行和可视化界面。用户命令行就是直接在DOM窗口中输入指令进行管理,可视化界面比如MAVEN和Eclipse整合。

2,MAVEN安装

2.1 下载MAVEN

在安装MAVEN之前应该把JDK安装好,关于JDK的安装和配置可以参见详解JDK的安装和配置。MAVEN和JDK类似,都是压缩包,下载完成后解压,配置环境变量即可,APACHE MAVEN下载。在下载之前应该先确定相应版本的MAVEN需要的JDK版本。MAVEN 3.3+需要JDK1.7及其以上,笔者下载的是MAVEN 3.5,JDK版本是1.8。

下面就是笔者的解压后MAVEN路径: D:\Program Files (x86)\EXE\apache-maven-3.5.0

2.2 配置环境变量

  • MAVEN_HOME =D:\Program Files (x86)\EXE\apache-maven-3.5.0
  • MAVEN_OPTS = -Xms128m -Xmx512m(可选)

然后再在path环境变量中追加MAVEN的配置: %MAVEN_HOME%\bin;

2.3 测试

配置好之后,我们来到DOM窗口,输入 mvn -v 。如果出现一些版本信息,那么MAVEN就是安装成功了。

3,MAVEN仓库

3.1 MAVEN仓库的工作原理

MAVEN给我们带来的最大的好处就是管理jar包,MAVEN管理jar包的模式是从远程仓库中把jar包下载到本地仓库中。仓库可以理解为缓存的地址,就是缓存项目需要的jar包,那么随着项目的扩大,本地仓库肯定为越来越大。

3.2 修改MAVEN仓库

本地仓库默认是在 C:\Users\用户名\.m2\repository 下,为了节约C盘的空间,我们将这个仓库的地址改为: D:\Program Files (x86)\EXE\apache_maven_local_repository 。找打MAVEN的安装目录下的 conf/settings.xml 文件。然后我们在<settings>节点下,加上<localRepository>节点:

<localRepository>D:/Program Files (x86)/EXE/apache_maven_local_repository</localRepository>

然后再在DOM控制台中输入: mvn help:system ,回车后,我们就可以看到一些下载信息,等下载结束后,我们再到 D:\Program Files (x86)\EXE\apache_maven_local_repository目录下,我们就可以看到许多文件了。

4,Eclipse和MAVEN的整合的配置

在Eclipse上整合MAVEN非常简单,我们只需要进行两个简单的设置就可以了。

在Eclicpse的Window->Preferences->Maven->Installations下面,我们将maven添加进来。

在Eclispe的Window->Preferences->Maven->User Settings中,我们将User Settings选项调换到MAVEN安装目录下的settings.xml文件夹。如果读者的setting.xml文件,也配置了 <localRepository></localRepository> 节点,那么可以看到Local Responsitoy的值就是 <localRepository> 节点下面的值。如果没有配置 <localRepository></localRepository>,那么Local Responsitory的值就是 C:\Users\用户名\.m2\repository 。

就设置这两个地方,然后就可以在Eclispe中创建MAVEN项目了。

5,Eclipse上创建MAVEN项目

我们在Eclipse菜单栏中点击File->New->Other->Maven,在弹出的对话框中会看到,如下图所示:

点击Maven Project,然后可以看到:

勾选create a simple project(skip archetype selection),点击next>后,我们可以看到:

这里有几个参数Group Id、Artifact Id、Version、Packaging。其中Group Id表示组的id,在一些大型的分组开发中会使用。Artifact Id就是以前项目名。Version代表版本。Packaging有三个值jar、pom和war,其中jar代表普通java项目,war代表web项目,pom用于集合MAVEN组件的时候使用的。

5.1 Eclispe中使用Maven搭建Spring MVC项目

下面我们使用Maven构建一个Spring MVC,我们选择Packaging为war,然后点击Finish。

src/main/java 里面是存储的java代码的地方

src/main/resources 是存储配置文件的地方

src/test/java 是测试java代码的地方

src/test/resources 是测试配置文件的地方

需要说明一些,这些文件都是是Eclipse分配给我们的可视化界面,是为了方便我们分类的。这是不是包!在tomcat中没有上面的这些的文件夹的。

新建好的web项目下面是没有web.xml的,需要在右击Deploymeny Descriptor,然后点击Generate Deployment Descriptor,生成web.xml文件。

Maven最大的好处就是自动管理相关的jar包,我在这里是搭建Spring webmvc框架,那么我们只需要打开pom.xml文件,然后在搜索spring-webmvc

然后选择一个版本的Spring-webmvc。保存后,Eclipse就会开始下载相关的jar包了。如果Eclispe没有下载,那么可以右击项目,然后run->Maven install。

进行下载相关的依赖包。如果在Libraries下出现Maven Dependencies包。

如果报出错误:  The superclass " javax.servlet.http.HttpServlet" was not found on the java build path. ,那么有两种解决方法,第一种就和上面导入Spring-webmvc的方式一样,直接在输入框中搜索servlet-api,然后选择一个版本的。不过这种方式可能会引起导入的servlet-api.jar和原来的Tomcat不兼容,这个问题最好是从本地tomcat中添加,通过build path把本地的servlet-api.jar添加进来。

到这里位置,一个简单的SpringMVC所需要的所有jar包就搞定了。然后我们像往常一样写代码和配置就可以了。

项目总结构:

HelloController.java 文件

package cn.test.Controller;

import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;

@Controller
public class HelloController {

    @RequestMapping(value="/hello.do")
    public String hello(Model model){
        model.addAttribute("helloinfo", "HELLO WORLD");
        return "hello";
    }
}

HelloController.java

applicationContext.xml文件

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:context="http://www.springframework.org/schema/context"
    xmlns:jdbc="http://www.springframework.org/schema/jdbc"
    xmlns:jee="http://www.springframework.org/schema/jee"
    xmlns:tx="http://www.springframework.org/schema/tx"
    xmlns:aop="http://www.springframework.org/schema/aop"
    xmlns:mvc="http://www.springframework.org/schema/mvc"
    xmlns:util="http://www.springframework.org/schema/util"
    xmlns:jpa="http://www.springframework.org/schema/data/jpa"
    xsi:schemaLocation="
    http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.1.xsd
    http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.1.xsd
    http://www.springframework.org/schema/jdbc http://www.springframework.org/schema/jdbc/spring-jdbc-4.1.xsd
    http://www.springframework.org/schema/jee http://www.springframework.org/schema/jee/spring-jee-4.1.xsd
    http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-4.1.xsd
    http://www.springframework.org/schema/data/jpa http://www.springframework.org/schema/data/jpa/spring-jpa-1.3.xsd
    http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-4.1.xsd
    http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-4.1.xsd
    http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-4.1.xsd">

    <context:component-scan base-package="cn"></context:component-scan>

    <mvc:annotation-driven></mvc:annotation-driven>

    <bean id="viewResolver"    class="org.springframework.web.servlet.view.InternalResourceViewResolver">
        <property name="viewClass">
            <value>org.springframework.web.servlet.view.InternalResourceView</value>
        </property>
        <!--jsp存放的目录-->
        <property name="prefix">
            <value></value>
        </property>
        <!--jsp文件的后缀-->
        <property name="suffix">
            <value>.jsp</value>
        </property>
    </bean>

</beans>

applicationContext.xml

web.xml文件

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" version="2.5">
  <display-name>mavenSpringMVC</display-name>
  <welcome-file-list>
    <welcome-file>index.html</welcome-file>
    <welcome-file>index.htm</welcome-file>
    <welcome-file>index.jsp</welcome-file>
    <welcome-file>default.html</welcome-file>
    <welcome-file>default.htm</welcome-file>
    <welcome-file>default.jsp</welcome-file>
  </welcome-file-list>

  <servlet>
      <servlet-name>dispatcherServlet</servlet-name>
      <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
    <init-param>
        <param-name>contextConfigLocation</param-name>
        <param-value>classpath:applicationContext.xml</param-value>
    </init-param>
  </servlet>
  <servlet-mapping>
      <servlet-name>dispatcherServlet</servlet-name>
      <url-pattern>*.do</url-pattern>
  </servlet-mapping>

</web-app>

web.xml

hello.jsp文件

<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
${helloinfo}
</body>
</html>

hello.jsp

welcome.html文件

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<a href="hello.do">hello</a>
</body>
</html>

welcome.html

运行welcome.html文件后,打开连接就可以看到如下的界面:

到这里表示我们数据请求就成功了。目前一个使用MAVEN管理的SpringMVC项目就完成了。Maven最主要的一个功能就是管理jar包,如果程序员手动导入jar包,很有可能就会遇到版本不兼容,报一大堆错,像这种各种jar包版本不兼容的问题是比较头疼的。Maven就使程序猿从中解放出来了,使得无需关系jar的版本问题。

6,Eclipse中使用MAVEN管理的Web分布式开发

在上面第5点,笔者介绍了如何利用Maven创建Web项目。Maven除了管理jar非常方便,它在模块开发方面也强大。完全支持开闭原则(对扩展开发,对修改关闭)。下面笔者就来介绍一下在Eclipse中使用Maven管理的web分布式开发。

关于创建Maven项目的细节,笔者就不在这里赘述了,可以参见上面第5点。

1,创建父模块(Project)

其实这里的父模块指的就是一种Maven项目,在上面创建MAVEN项目时候说了,jar、war和pom的区别,如果我们需要使用Maven进行模块开发,那么packaging的类型就需要指定为pom。

2,创建模块(Module)

上面创建的父模块可以关联多个子模块,这里为了举例就只创建两个子模块(model1和model2)。在new->other->Maven中选中Maven Module,

建立的Module名称为model1,关联的父模块的packaging的类型必须是pom。

这里演示的是web分布式开发,所以Packaging选择了war。第二个model2同理第一个model1,到这里为止我们就完成了一个简单分布式web开发部署了。如果在model1或是model2里面编译程序,那么结果会立即同步到manager中去,因此可以在manager中对model1和model2进行分布式管理。

三着在项目中的结构:

我们可以看出在项父块中,有对两个子模块的关联。

到这里关于Eclipse中进行MAVEN开发部署就讲解完了,如果读者觉得还不错,请点个赞。

时间: 2024-12-28 09:53:06

【MAVEN】如何在Eclipse中创建MAVEN项目的相关文章

maven之在eclipse中创建maven项目

1.Maven插件Eclipse已经内置. 2.Maven插件的设置: Window->Preferences->Maven ①installations : 指定Maven核心程序的位置.默认是插件自带的Maven程序,改为我们自己解压的那个. ②user settings : 指定Maven核心程序中 conf/settings.xml 文件的位置,进而获取本地仓库的位置. 3.基本操作 ①创建Maven版的Java工程 创建时勾选上 Create a simple project(ski

如何在Eclipse中创建web项目并使用tomcat8 运行servlet开发简单的动态网页?

今天花了一天时间.因为用eclipse没多久,不是很熟悉使用,看的教程又是使用myeclipse的,但是eclipse相对没有myeclipse灵活,所以在网上找了很多资料,最后算是可以实现了.新手可以参考一下. (1)创建一个web项目 File---->New----->Dynamic Web Project----->输入项目名----->将Dynamic web module version改为2.5----->Next------>next------>

在eclipse中创建maven webapp项目时弹出错误-解决办法

在eclipse中创建maven webapp项目时报错: Could not resolve archetype org.apache.maven.archetypes:maven-archetype-webapp:1.0 from any of the configured repositories. 问题产生原因:是因为本地仓库中缺少了maven-archetype-webapp包,也可能这个包下载不完全,比如:只有pom文件,或只有jar包文件等   [包路径为:C:\Users\xxx

在eclipse中创建web项目

如何创建dynamic web project项目 本文的演示是从本地文件创建dynamic web project,从svn检出的同时创建dynamic web project于此类似.我们推荐使用解压版的tomcat6.x版本,来作为服务器.可以到http://tomcat.apache.org 下载. 在创建动态web项目之前,我们先创建一个Server用于在eclipse里运行和调试web项目. 创建一个Server 创建Server是为了方便在eclipse里启动和调试dynamic

有关使用Maven常见问题总结(Eclipse中使用Maven、Maven项目部署到tomcat等问题)

最近一些项目需要让Maven来管理,一种情况是将之前的eclipse的Java Project项目和Web project 加入Maven管理,还有一种情况是,将SVN上的Maven项目拉到本地,在eclipse中使用时遇到的一些棘手问题,问题过程和解决具体方案如下: 1.在eclipse中安装maven插件后启动eclipse时,会遇到如下警告: The Maven Integration requires that Eclipse be running in a JDK, because a

在Eclipse中创建maven和修改默认配置

进入到eclipse里面创建maven项目 然后修改eclipse里面默认的maven配置,在菜单栏选择window-Preferences 添加完后,选择自己安装的maven版本 然后切换到User Settings配置 到上面这一步基本配置完成啦 原文地址:https://www.cnblogs.com/unlasting/p/12192315.html

Maven进价:eclipse中集成maven

一.M2Eclipse插件 m2eclipse是一个在Eclipse中集成Maven的插件,有了该插件,用户可以方便的在Eclipse中执行Maven命令.创建Maven项目.修改POM文件等. 下载地址:https://www.eclipse.org/m2e/m2e-downloads.html 二.安装M2Eclipse help>install new software..  >Add Name中输入 m2e Location中输入 http://download.eclipse.org

如何在Eclipse中使用依赖项目(Required projects)代替jar

最近想看下spring的源码,下了源码后,搭建个简单的例子hellospring的web项目,采用工程依赖使用源码中的类.搭建好后启动tomcat报java.lang.ClassNotFoundException: org.springframework.web.servlet.DispatcherServlet错误.参考了下面文章. 在Eclipse中使用依赖项目(Required projects)替换jar的好处就是可以随时更改依赖项目中的代码,而在主项目中引用到最新的编译类.这种方式在D

eclipse 中创建maven web项目

Maven的Eclipse插件m2eclipse在线安装地址 http://m2eclipse.sonatype.org/sites/m2e:我又试了link方式安装也没什么作用,不知怎么回事? 还有让webapp显示到最上层的WTP插件http://m2eclipse.sonatype.org/sites/m2e-extras 下面介绍方法 一.创建新Maven Web项目 1.新建Maven Project:new project--选择MavenProject--下一步选择工作空间--下一