文章目录
- 创建方式介绍
- 对比三种方式创建的maven项目结构
- 1.maven-archetype-webapp
- 2.maven-archetype-quickstart
- no archetype(无原型)
- 对比总结
- 对比三种方式创建的maven项目的pom文件的区别
- webapp的pom文件
- quickstart的pom文件
- no archetype 的pom文件
- 对比pom文件总结
- 如果你不是webapp模板创建的maven项目,但想增加web环境的话
- 如果你的web.xml文件没有怎么办
- web头文件的区别
- 怎么创建自己本地仓库,避免每次指定呢
- Java8与JDK1.8与JDK8与J2SE8与J2SE1.8的区别是什么?
- idea右侧的maven使用工具顶部栏看不懂呀!!
- maven 的plugin的作用都是些啥啊???
创建方式介绍
三种方式如下面注释描述
避免创建失败,添加archetypeCatalog属性值,覆盖原本默认的(原本默认的比较慢)。
对比三种方式创建的maven项目结构
1.maven-archetype-webapp
2.maven-archetype-quickstart
no archetype(无原型)
对比总结
方法 | 有无 |
maven-archetype-webapp | 会自动创建好WEB环境,避免我们去project structure中自己配置,避免手动创建文件夹和web.xml文件。但没有java运行环境,需要自己手动创建 |
maven-archetype-quickstart | 会为我们创建好java环境和test环境 ,而且连一个最开始的类都给我们了 |
no archetype | 有可以使用的java,resource,test目录 |
对比三种方式创建的maven项目的pom文件的区别
webapp的pom文件
因为idea显示不下全部信息,所以我换到网页上截图下来了
quickstart的pom文件
no archetype 的pom文件
对比pom文件总结
1、如果默认创建maven项目的话,pom文件是需要自己去写一些东西的,比如测试依赖(不然你的Test文件里写东西是会报错的,因为找不到依赖),编译版本号(虽然也可以不写,但不排除可能你的maven管理工具的版本和你javeSE不匹配。)
2、像上面的plugin里面的一些maven是可以不用写在plugin里面的,所以删了也没事,你可以在idea右侧工具栏maven中找到这些工具
如果你不是webapp模板创建的maven项目,但想增加web环境的话
举个例子,你在默认环境下创建后,想增加web环境
file->project structrue->facets ,点击+号,选择web
创建完之后,你的web目录就出现了(会有一个默认路径)。如果觉得位置不对,可以自己移动到main下面,但是别忘记更改project structrue->facets里面的路径
如果你的web.xml文件没有怎么办
是不是感觉新建一个xml文件很头疼,而且那个头部确实记不住啊!
可以如下操作。
setting->editor->file and code templates , 然后点击+号。设计模板
然后你就可以在你的右键 然后发现一个叫web的模板
相信你们在使用mybatis的mapper.xml文件的时候也可以这么干过
web头文件的区别
像我上面创建的maven-archetype-webapp项目,其实里面系统给我的xml版本是2.x的,可能有些属性用不了。但是我们现在xml版本都已经是4.x了。
像上面那段,我自己添加的web.xml模板里面,就是用的4.0的
怎么创建自己本地仓库,避免每次指定呢
记住是other Setting里的,因为setting里的maven配置指的是current project
这是我的,可以参考一下
Java8与JDK1.8与JDK8与J2SE8与J2SE1.8的区别是什么?
如果你对这几种说法有模糊的话,可以看一下文章哈。
我找的,点击下方链接
java sdk 说法的区别
idea右侧的maven使用工具顶部栏看不懂呀!!
数字 | 作用 |
1 | 重新扫描项目,避免新增模块没被加载 |
2 | 我也不知道,没试出效果 |
3 | 下载jar包依赖的源码 |
4 | 弹出可执行的 Maven 命令的输入框 |
5 | 我还是不知道,没试出效果 |
6 | 字面意思,跳过测试 |
7 | 项目依赖结构图,点了你就明白了 |
8 | 收起整个maven管理的目录 |
maven 的plugin的作用都是些啥啊???
找了一个我的多maven项目的工具图
主要来看表格吧
名字 | 作用 |
clean | 清除项目的target目录 |
compiler | 把源码编译成字节码生成class文件,并把编译好的class文件输出到target\classes目录下 |
deploy | 项目编译、单元测试、打包功能,同时把打好的可执行jar包(war包或其它形式的包)布署到本地maven仓库和远程maven私服仓库 |
install | install命令完成了项目编译、单元测试、打包功能,同时把打好的可执行jar包(war包或其它形式的包)布署到本地maven仓库,但没有布署到远程maven私服仓库 |
resources | 执行compiler前会用到这个 |
site | 没用过 |
surefire | Maven通过Maven Surefire Plugin插件执行单元测试 |
war | web模块用war打包 |
jar | class文件用jar打包 |