maven(三):maven项目结构及其运行机制
在上一篇中讲了如何创建maven项目,现在回到那个项目
项目结构
src/main/java:java代码目录
src/main/resources:资源目录,比如spring.xml文件,properties参数等
java和resources目录的内容都会编译到classpath下,也就是和传统项目的src目录一样的作用,这里分成多个目录是为了开发时方便管理资源
libraries:默认只有jre和maven,没有引入tomcat库,我们的项目应该可以在所有的web服务器中运行,而不仅仅是tomcat
webapp:这就是传统项目的WebContent目录
web-resources:作用不详,可以无视
src:src根目录的完整结构
target:maven输出目录,这个目录汲及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项目,下一篇会详解
maven(三):maven项目结构及其运行机制的更多相关文章
- JVM内存结构,运行机制
三月十号,白天出去有事情出去了一天,晚上刚到食堂就接到阿里电话, 紧张到不行,很多基础的问题都不知道从哪里说了orz: 其中关于JVM内存结构,运行机制,自己笔记里面有总结的,可当天还是一下子说不出来 ...
- Web框架——XWAF的代码结构和运行机制(4)
XWAF是一套基于Servlet和java反射技术的Web应用程序框架,它利用Servlet运行机制在服务器上加载和运行,接管客户端请求,依靠ServletRequest对象获取用户请求信息,使用Se ...
- maven学习--1.项目结构及简单使用
1.项目目录结构 MavenProjectRoot(项目根目录) |----src | |----main | | |----java ——存放项目的.ja ...
- 使用maven构建 ssm项目 tomcat7插件运行报错, Invalid byte tag in constant pool: 60
错误日志: [WARNING] [WARNING] Some problems were encountered while building the effective settings[WARNI ...
- Minecraft Forge编程入门三 “初始化项目结构和逻辑”
经过前面两个教程Minecraft Forge编程入门一 "环境搭建"和Minecraft Forge编程入门二 "工艺和食谱",我们大体知道了如何自定义合成配 ...
- 从零开始Vue项目实战(三)-项目结构
目录结构 ├── README.md 项目介绍 ├── index.html 入口页面 ├── build 构建脚本目录 │ ├── build-server.js 运行本地构建服务器,可以访问构建后 ...
- php CI框架目录结构及运行机制
CI目录结构 CI主要组成部分为,application(应用文件夹).system(系统文件夹)和index.php入口文件. 应用文件夹中主要是存放控制器.模型和视图等,系统文件夹中主 ...
- 三:理解Page类的运行机制(例:在render方法中生成静态文件)
我这里只写几个常用的事件1.OnPreInit:此事件后将加载个性化信息和主题2.OnInit:初始化页面中服务器控件的默认值但控件的状态没有加载,没有创建控件树3.OnPreLoad:控件完成状态和 ...
- maven学习(三)-使用maven来创建项目
转自https://www.cnblogs.com/xdp-gacl/p/4240930.html maven作为一个高度自动化构建工具,本身提供了构建项目的功能,下面就来体验一下使用maven构建项 ...
随机推荐
- 终于等到你!阿里正式向 Apache Flink 贡献 Blink 源码
摘要: 如同我们去年12月在 Flink Forward China 峰会所约,阿里巴巴内部 Flink 版本 Blink 将于 2019 年 1 月底正式开源.今天,我们终于等到了这一刻. 阿里妹导 ...
- python之getpass模块使用
我们登入linux时,输入密码是什么都不显示的,在python中也可以这样做,那就是getpass模块(在pycharm中无法使用) getpass模块中包含几个比较实用的功能: 1.getpass ...
- C# TableLayoutPanel使用方法
一.利用TableLayoutPanel类展示表格,以10行5列为例 第1步:在前台创建一个panel,使TableLayoutPanel对象填充其内部. 第2步:创建TableLayoutPanel ...
- Atom相关资料整理
官网地址 https://atom.io/ Atom 中文社区 https://atom-china.org/ 常用插件 Emmet 这款插件是用来支持zend-coding,Emmet的前身是大名鼎 ...
- SQL 必知必会·笔记<20>高级SQL特性
1. 约束 约束(constraint)就是管理如何插入或处理数据库数据的规则.DBMS通过在数据库表上施加约束来实施引用完整性. 1.1 主键 主键是一种特殊的约束,用来保证一列(或一组列)中的值是 ...
- 读vue-0.6-observer.js源码
实现监听数组方法 var ArrayProxy = Object.create(Array.prototype), methods = ['push','pop','shift','unshift', ...
- 给linux系统配置网络
修改/etc/sysconfig/network-scripts/ifcfg-eth0 ip地址变量:IPADDR子网掩码变量:NETMASK如果本机和linux 网段不相同 如:192.168.8. ...
- Python vtk学习(1)
Vtk,(visualization toolkit)是一个开源的免费软件系统,主要用于三维计算机图形学.图像处理和可视化.Vtk是在面向对象原理的基础上设计和实现的,它的内核是用C++构建的,包含有 ...
- Spark集群的任务提交执行流程
本文转自:https://www.linuxidc.com/Linux/2018-02/150886.htm 一.Spark on Standalone 1.spark集群启动后,Worker向Mas ...
- nginx跳转访问
server { listen 8888; server_name localhost; #charset koi8-r; #access_log logs/host.access.log main; ...