我们可以看一下Maven项目的大致结构:

    

项目结构

src/main/java:java源代码文件目录。

src/main/resources:资源库,会自动赋值到classes目录里,像是spring.xml文件、properties参数等。

java和resources目录的内容都会编译到classpath下,也就是和传统项目的src目录一样的作用,这是为了开发时方便管理资源。

src/test/java:单元测试java源代码文件。

libraries:默认只有jre和maven,但是因为上一篇文章中已经引用了tomcat,所以此处便有tomcat的库。

    webapp:这就是传统项目中的WebContent目录。

    target:是有存放项目构建后的文件和目录,jar包、war包、编译的class文件等。而且target里面的所有内容都是maven构建的时候生成的。

  而target目录涉及到maven项目运行机制。

  tomcat默认的临时目录:eclipse工作空间\.metadata\.plugins\org.eclipse.wst.server.core\tmp0。

  执行项目-清理时:会把java文件编译成class输出到target目录(maven update默认会执行清理)。

  清理后第一次在eclipse中运行tomcat时:会把target发布到tomcat临时目录,如果target缺少class文件夹,这时候会报target错。

  第二次以后再运行tomcat:会有本地缓存,不会再从target复制。

  浏览器访问:请求的是tomcat临时目录,这个时候如果报错,是指tomcat临时目录有错。

  新增/修改/删除java文件:会自动编译class更新到target(在项目视图不显示class文件)。

  以上过程如果发生意外或遇到缓存问题解决不了,可以把target和tomcat临时目录连根拔除,再尝试执行maven update和项目—清理,再不行就重启。

  pom.xml:这是maven配置文件,放在项目根目录,eclipse以此文件来判断是否是maven项目。


参考文章:https://blog.csdn.net/wangb_java/article/details/53975726

(二)maven之项目结构的更多相关文章

  1. 微信开发准备(二)--springmvc+mybatis项目结构的搭建

    转自:http://www.cuiyongzhi.com/post/34.html 前面一篇有说道如何在MyEclipse中搭建maven项目,这里将继续介绍如何在搭建好的基础maven项目中引入我们 ...

  2. Maven 标准项目结构

    项目结构 src main java         源文件 resources    资源文件 filters   资源过滤文件 config   配置文件 scripts   脚本文件 webap ...

  3. [转]-Gradle使用手册(二):项目结构

    原文地址:http://tools.android.com/tech-docs/new-build-system/user-guide#TOC-Using-sourceCompatibility-1. ...

  4. Gradle使用手册(二):项目结构

    原文地址:http://tools.android.com/tech-docs/new-build-system/user-guide#TOC-Using-sourceCompatibility-1. ...

  5. Vue-admin工作整理(二):项目结构个人配置

    通过上一篇文章(Vue-admin工作整理(一):项目搭建)操作完毕后,基础项目已经搭建,下面就要对项目本身进行一下项目结构调整来符合自己的项目要求 1.首先要对package.json文件进行调整, ...

  6. maven的项目结构

    1.标准目录结构: src -main       –bin 脚本库       –java java源代码文件       –resources 资源库,会自动复制到classes目录里       ...

  7. 定义maven的项目结构

    创建一个Maven 的父项目 新建一个maven项目,选中create a simple project 填写以下内容: 如下内容: Group Id :edu.zipcloud.cloudstree ...

  8. Maven:项目结构

    目录结构图: project        |- src            |- main   //工程源代码目录                |- java        //工程java源代 ...

  9. 从壹开始微服务 [ DDD ] 之二 ║ DDD入门 & 项目结构粗搭建

    前言 哈喽大家好,今天是周二,我们的DDD系列文章今天正式开始讲解,我这两天一直在学习,也一直在思考如何才能把这一个系列给合理的传递给大家,并且达到学习的目的,还没有特别好的路线,只是一个大概的模糊的 ...

随机推荐

  1. sqlserver:rank() over()函数

    先前在oracle数据库中接触过over()函数的一系列使用,但是在实际的sql开发中并没有太多的使用,这次在sqlserver的sql拼写中重新遇到这个函数,故结合网上的例子和项目中实际中使用,将其 ...

  2. PICO 中关于时基ps3000aGetTimebase函数介绍

  3. HDOJ-2160

    母猪的故事 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submi ...

  4. Flutter实战视频-移动电商-07.Dio基础_POST请求的使用

    07.Dio基础_POST请求的使用 越界问题解决 容器越界的问题,越界是因为键盘弹起的问题.如果键盘不弹起是不会越界 我们加一个滚动组件就可以解决. 这是技术胖视频中出现的越界的截图效果 这是我自己 ...

  5. Identity Server 4 原理和实战(完结)_Hybrid Flow 实例, Claims, 角色授权和策略授权

    4分50 建立客户端 不需要身份认证 客户端叫做HybirdClient 配置IdentityServer服务端,先把客户端添加上 把userClaims添加到token里面 然后运行服务端就可以了 ...

  6. c++指针参数是如何传递内存的

    参数策略 如果函数的参数是一个指针,不要指望用该指针去动态申请内存.如下: void GetMemory(char *p, int num) { p = (char *)malloc(sizeof(c ...

  7. Forward Rendering 正向渲染

    Forward Rendering 正向渲染        正向渲染一个基于着色器的渲染路径.它支持逐像素计算光照(包括法线贴图和灯光Cookies)和来自一个平行光的实时阴影.在默认设置中,少数最亮 ...

  8. 关于web常见的安全问题

    一. Web攻击动机: 1.恶作剧: 2.关闭Web站点,拒绝正常服务: 3.篡改Web网页,损害企业名誉; 4.免费浏览收费内容; 5.盗窃用户隐私信息,例如手机号.Email等个人信息; 6.以用 ...

  9. properties 文件注意事项

    不要使用""双引号包裹内容 db.validationQuery="select 1"比如上面这种是错误的,下面的是正确的写法 db.validationQue ...

  10. Java | 基础归纳 | 静态方法与实例方法的区别

    静态方法和实例方法的区别主要体现在两个方面: 在外部调用静态方法时,可以使用"类名.方法名"的方式,也可以使用"对象名.方法名"的方式.而实例方法只有后面这种方 ...