转:https://blog.csdn.net/ClementAD/article/details/46592557

MyEclipse中创建新的Maven项目(webapp目录结构)过程如下:
 
1. New -> Project... -> Maven Project
 

2. Next,

 
3. Next, 选择“maven-archetype-webapp”创建一个webapp目录结构的项目
4. 填Group Id,Artifact Id,和Package(请参考后面的“关键词”),点击“Finish”
5. 休息片刻,等待MyEclipse创建项目
创建完成后,文件目录结构如下:
 
6. (如果不喜欢现在的文件名)修改项目名称和存放路径:项目右键 -> refactor -> rename
7. 添加代码目录:
注:如果是MyEclipse2015,只需要在Java Build Path -> Libraries 中,把JRE System Library修改为“Workspace default JRE”就可以自动有那些目录了,无需下面的操作。
项目右键 -> Build Path -> New Source Folder...,填写“src/main/java”
(注:MyEclipse2015没有这个菜单,直接这样就行:项目右键 -> New -> Folder ->Folder Name 输入 "src/main/java",然后重复步骤输入“src/test/java”)
 
 
添加后,test目录也自动有了:
 
8. (如果需要)修改项目所使用的jdk:项目右键 -> Build Path -> Configure Build Path...
 
 
最终的项目目录结构如下:
9. 添加相应的插件,如 maven-compiler-plugin

  1. <plugin>
  2. <groupId>org.apache.maven.plugins</groupId>
  3. <artifactId>maven-compiler-plugin</artifactId>
  4. <version>2.3.2</version>
  5. <configuration>
  6. <source>1.7</source>
  7. <target>1.7</target>
  8. </configuration>
  9. </plugin>

关键词:

GroupId:一般是公司名或组织名
ArtifactId:一般是project名
Packaging:打包类型,jar/war/rar/ear/pom等,默认是jar
Version:版本号,GroupId+ArtifactId+Packaging+Version构成项目的唯一标识
Snapshot:标识一个正在开发阶段、会经常更新、但尚未发布的版本
 
<dependency management>和<dependencies>的区别:
在父POM中用<dependency management>定义好version, scope, 和exclusions后,可以被子POM中用<dependencies>定义的依赖所继承使用。这样,如果有多个子POM的话,可以确保用同一套version, scope, 和exclusions。
 
Dependency Scope:
  • compile: 默认的scope。编译、测试、打包全都需要。compile参与依赖传递,就是说,项目A依赖于B(依赖scope是compile),项目C依赖于你的项目A,那么C也就依赖于B。
  • provided: 表示JDK或者容器会在Runtime时提供这些(jar),如servlet api,部署时是不需要它的,因为应用服务器肯定有这些东西。provided的东西在编译和测试时会用到,不参与传递依赖。
  • runtime: 表示编译时不需要,但测试和运行时需要,最终打包时会包含进去。
  • test: 只用于测试阶段(测试的编译和测试的运行),典型的就是junit的jar。
  • system: 和provided类似,但要求jar是系统里已有的,不会在repository里找,如rt.jar,tools.jar这些。
  • import: 简单的说,项目的pom可以继承另一个项目的pom,从而继承了父项目的依赖关系,但是因为之后single inheritance的限制,所以创造了import,使得你可以“导入”或者说“继承”任何一到多个项目的依赖关系。

找包的方法:
  1. 在GOOGLE里输入: maven spring repository
  2. 得到:
  1. <dependency>
  2. <groupId>org.springframework</groupId>
  3. <artifactId>spring</artifactId>
  4. <version>2.5.5</version>
  5. </dependency>

等Maven下载完jar包后,

  1. Stop server
  2. Redeploy/Reload application
  3. Start server
 
或在此网站中查找:http://mvnrepository.com/

(转)图文详解MyEclipse中新建Maven webapp项目的步骤的更多相关文章

  1. 图文详解Unity3D中Material的Tiling和Offset是怎么回事

    图文详解Unity3D中Material的Tiling和Offset是怎么回事 Tiling和Offset概述 Tiling表示UV坐标的缩放倍数,Offset表示UV坐标的起始位置. 这样说当然是隔 ...

  2. Maven入门1-在Eclipse中新建Maven Web项目

    在eclipse中新建Maven Web项目 很多时候开发效率低下,大部分原因是IDE环境不熟悉.配置不会配置:因此在学习一项技能之前,有必要对基本的环境配置有所了解,正所谓磨刀不误砍柴工.这篇文章主 ...

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

    在eclipse中创建maven webapp项目时报错: Could not resolve archetype org.apache.maven.archetypes:maven-archetyp ...

  4. MyEclipse使用总结——在MyEclipse中新建Maven框架的web项目[转]

    前面的文章我们已经在本机安装好了maven,同时在myeclipse中配置好了maven的插件. 链接如下: Maven安装----在Windows上安装Maven myeclipse安装maven插 ...

  5. myeclipse 2014新建maven web 项目步骤

    首先在myeclipse中配置maven的安装路径: 在pom.xml中加上: 1 2 3 4 5 6 7 8 9 10  <plugins>           <plugin&g ...

  6. Eclipse中新建Maven Web项目报错:The superclass "javax.servlet.http.HttpServlet" was not found on the Java Build Path

    在maven web项目中的index.jsp中的错误信息如下: The superclass "javax.servlet.http.HttpServlet" was not f ...

  7. Eclipse新建Maven webapp项目错误的解决方法

    新建webapp项目时出现如下错误: 解决步骤如下: 1.  右键点击项目,选择Properties,点击Java Build Path,将默认的JRE移除,点击右侧add Library,选择JRE ...

  8. Failed to execute goal org.apache.maven.plugins:maven-resources-plugin:3.0.2:resources 在我的myeclipse中新建maven工程总出现这个问题

    只需在下图中更改代码 更改后是这样的: <plugin> <groupId>org.apache.maven.plugins</groupId> <artif ...

  9. MyEclipse10建立Maven Webapp项目并通过git传到GitHub

    先创建Maven Webapp项目 图文详解MyEclipse中新建Maven webapp项目的步骤(很详细) 在web项目的路径中右键(前提是你机器已经装了git)“Git Init Here”, ...

随机推荐

  1. [CSP-S模拟测试86]题解

    好久没有写整套题的题解了呢……主要是这两天考试题愈发神仙 实在是超出了垃圾博主的能力范围啊QAQ A.异或 不难想到,如果我们得到了$[L,R]$中每一位上0和1的个数,那么答案即为$2 \times ...

  2. arm可以干什么

    ARM开发可以控制各种电机.arm性能很强 ,内存更大, c语言当然可以.ARM是32位的,单片机是8位的,运行速度快很多,最关键的是可以跑操作系统.控制部分的内容ARM当然可以胜任,而且ARM的资源 ...

  3. leetcode-解题记录 884. 两句话中的不常见单词

    题目 给定两个句子 A 和 B . (句子是一串由空格分隔的单词.每个单词仅由小写字母组成.) 如果一个单词在其中一个句子中只出现一次,在另一个句子中却没有出现,那么这个单词就是不常见的. 返回所有不 ...

  4. flysql 里两种传参的方式

    传参的方式,两个标清楚: for lists_bx_goods in out_list: sql = XDO().get_update_sql('init_goods_test', { "一 ...

  5. 斯坦福【概率与统计】课程笔记(二):从EDA开始

    探索性数据分析(Exploratory Data Analysis) 本节课程先从统计分析四步骤中的第二步:EDA开始. 课程定义了若干个术语,如果学习过机器学习的同学,应该很容易类比理解: popu ...

  6. Learning OSG programing---osgwindows

    /* OpenSceneGraph example, osgwindows. * * Permission is hereby granted, free of charge, to any pers ...

  7. Cocos2d-x之UI控件简介

    |   版权声明:本文为博主原创文章,未经博主允许不得转载. 在Cocos2d-x中提供了一种UI控件,UI控件是指用户交互界面的操作部件.UI控件可以是Button(按钮),CheckBox(选择框 ...

  8. “希希敬敬对”队软件工程第九次作业-beta冲刺第五次随笔

    “希希敬敬对”队软件工程第九次作业-beta冲刺第五次随笔 队名:  “希希敬敬对” 龙江腾(队长) 201810775001 杨希                   201810812008 何敬 ...

  9. C++异常处理的深入理解

    1,问题: 1,如果在 main 函数中抛出异常会发生什么? 1,不处理,则崩溃: 2,如果异常不处理,最后会传到哪里? 3,下面的代码输出什么? 4,异常的最终处理编程实验: #include &l ...

  10. python面试题之简要描述Python的垃圾回收机制(garbage collection)

    这里能说的很多.你应该提到下面几个主要的点: Python在内存中存储了每个对象的引用计数(reference count).如果计数值变成0,那么相应的对象就会小时,分配给该对象的内存就会释放出来用 ...