maven虽说是个好东西,但是用起来也有很多不如人意的地方,也有可能是自己掌握的不够,希望有兄弟可以指出。
问题1.
web project -> property -> Deployment Assembly 中把 maven dependencies 的build path 加进来
但是只要执行Maven -> update projects 就会把 这个去掉了 然后又要手动的加一次,烦不胜烦
问题2.
web project 依赖 tomcat-catalina.jar, tomcat-servlet-api.jar但是运行的时候会把这两个依赖也发布到tomcat中,我已经把这两个的依赖范围设置为provided了
这个问题已经有人提了
https://issues.sonatype.org/browse/MECLIPSEWTP-110
然后我按照这位仁兄的文章,
http://paskaa.iteye.com/blog/831642
更新了插件,在装m2e_extras的时候需要装 Maven Integration for WTP (Optional)
以上两个问题全部解决,以前是从eclipse官网下的插件,现在是从sonatype官网下的
问题3.
更新了插件之后又有一个问题
比如web project A 引用 java project B,如果这两个工程在同一个工作空间就不行,始终抱找不到类
但是,如果把 web project A -> Property -> Maven -> Resolve dependencies from Workspace projects 勾去掉就又可以了 就是war类型的maven工程不能引用工作空间中的其他工程,这个问题也找到了
https://issues.sonatype.org/browse/MNGECLIPSE-1878
现在只能不断发布了
问题4.
web工程用Mavne-> update projects更新时会把 context root 改为和工程名一样,需要每次在工程属性里面设 Web Project Settings -> Context root
后来在pom.xml中加了一个属性:
<properties>
<m2eclipse.wtp.contextRoot>/hidcm</m2eclipse.wtp.contextRoot>
</properties>
这样就可以了
问题5.
在用户的setting.xml中设置镜像的时候mirrorof -> * 代替所有的仓库,但是有时候插件下载不下来