依赖范围 | 编译时有效 | 测试时有效 | 运行是有效 | 例子 |
compile | Y | Y | Y | 核心jar之类 |
test | Y | Junit | ||
provided | Y | Y | tomcat上就有的jar | |
runtime | Y | Y | jdbc驱动 | |
system | Y | Y |
provided表示你在开发是需要但是不需要打包到war里(部署到tomcat不需要)
不过test或runtime写成compile一般没啥问题(test本身只是测试时用到但是放到tomcat也没啥只是时项目变得笨重,runtime就不用说了吧【他本身运行时就需要】)
maven打war包(这个部分我一直用个办法网上貌似还有其他方法)
先clean一下:
项目右键选run或者debug也行然后选clean
然后就重复上一步选install就ok(默认是在你项目空间里面,同时会复制一份到你maven存放jar包处group id名里)
Building war: E:\javaprog1\ssh\target\ssh-0.0.1-SNAPSHOT.war
[INFO] WEB-INF\web.xml already added, skipping
[INFO]
[INFO] --- maven-install-plugin:2.4:install (default-install) @ ssh ---
[INFO] Installing E:\javaprog1\ssh\target\ssh-0.0.1-SNAPSHOT.war to C:\Users\Administrator.ZX-201701081730\.m2\repository\com\1024gd\ssh\0.0.1-SNAPSHOT\ssh-0.0.1-SNAPSHOT.war
[INFO] Installing E:\javaprog1\ssh\pom.xml to C:\Users\Administrator.ZX-201701081730\.m2\repository\com\1024gd\ssh\0.0.1-SNAPSHOT\ssh-0.0.1-SNAPSHOT.pom
这个是控制台反馈的信息