我们可以看一下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. HDOJ-2047

    阿牛的EOF牛肉串 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total S ...

  2. PHP实用小程序(三)

    <HTML> <HEAD> <TITLE>给数组增加元素</TITLE> </HEAD> <? $Cities[] = "& ...

  3. JS 表单自动提交

    一.前言 在做项目中,将有些容易忘记的代码进行汇总. 二.案例 表单提交,如一个页面的搜索. 表单的代码 <form class="search-form" id=" ...

  4. 基于thinkphp5的Excel上传

    涉及知识点: thinkphp5.0: excel上传: mysql建立新表(基本的create语句): mysql ignore(避免重复插入): 主要功能: 通过在视图中上传excel文件,在my ...

  5. vue key值的重复键问题报错

    1.问题描述:在vue2.0+ 中做一个公用的评论组件,:key使用的时创建评论的时间,当加载更多的时候,会报错: Duplicate keys detected: '2019-01-24T07:15 ...

  6. node中的url模块解析结果

    1. URL模块作用: url 模块用于处理与解析 URL. 使用方法如下: const url = require('url'); 2. URL 字符串与 URL 对象 URL 字符串是结构化的字符 ...

  7. lightoj1006【记忆化搜索(我是这么叫)】

    搜索的时候记录一下,注意要long long: #include<cstdio> #include<queue> #include<map> #include< ...

  8. STLstack,queue

    今天一开始用C去摸栈和队列,差不多昨天早上也在摸,摸烦了就去搞DP然后DP也没搞好,就是很烦很烦!!!! 然后今天那些C的栈队列的步骤和名称熟的不要不要的,然而数据结构的c语言用指针,传递,简直麻烦, ...

  9. Codevs 3134 Circle

    3134 Circle 题目描述 Description 在一个圆上,有2*K个不同的结点,我们以这些点为端点,连K条线段,使得每个结点都恰好用一次.在满足这些线段将圆分成最少部分的前提下,请计算有多 ...

  10. Node.js 自定义模块

    Node.js内置多个模块,也可以使用第三方模块,今天学习一下如何使用自己定义的模块 在同级目录下定义两个js文件 第一个:custom1.js "use strict"; fun ...