Eclipse里每次使用maven的update projects时,Web Deployment Assembly中添加maven dependencies时自动消失的问题
其实都是些简单的但很烦人的要点,只做记录用,大牛绕过
1.问题一:maven依赖jar导出消失问题
新创新的Maven管理的项目,使用的模板是maven-archetype-quickstart,设置maven管理的jar导出时,如下
在每次”update projects”时,会自动将添加到Maven Dependencies去掉,结果如下:
,这是为什么呢?
答案如下:
因为新创建的项目里pom.xml默认是导出jar包的,意思就是把当前项目视为创建的jar项目,即
<packaging>jar</packaging>
如果当前项目是jar当然不会将项目依赖的jar也一起导出的,所以在update projects里,会将依赖的jar去掉。
修改如下:
<packaging>war</packaging>
再试一次就不会去掉依赖的jar包了。
问题二:每次update projects时项目编译水平变成1.5
eclipse加载java项目时,默认会用1.5的版本去编译或者引进jdk版本,修改pom文件设置所需的版本。
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.0</version>
<configuration>
<source>1.7</source>
<target>1.7</target>
</configuration>
</plugin>
</plugins>
</build>
问题三:maven 遇到failOnMissingWebXml有关问题解决方法
1)确保WEB-INF下web.xml存在
2)右击项目,打开Properties对话框,点击Deployment Assembly选项,在右边添加一个WebContent文件夹,并且保存设置
2)在eclispe上方点击Project ->Clean 清理一下这个项目
3)右键maven选项里update Project。
4 )pom.xml里添加如下:
<build>
<finalName>JedisSpring</finalName>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>tomcat-maven-plugin</artifactId>
<version>1.1</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>2.6</version>
<configuration>
<warName>JedisSpring</warName>
<failOnMissingWebXml>false</failOnMissingWebXml>
<!--<webXml>WebContent/WEB-INF/web.xml</webXml> -->
<webResources>
<resource>
<directory>WebContent</directory>
<filtering>false</filtering>
</resource>
</webResources>
</configuration>
</plugin>
</plugins>
</build>