1.用cmd使用maven时无法访问项目(以后再看)
junit4.9 ,4.10 ,都出现使用cmd进行mvn test
出错
解决方法:如下在pom.xml中junit改为4.11或4.12终于可以test了
问题2.用idea使用maven时内部tomcat报错 (因为maven内部使用的是tomcat6)
怀疑是tomcat版本与jdk版本不兼容,自己使用的是jdk10(maven配置的也是?)导致该版本的tomcat访问jsp时出问题
于是在pom.xml中加入plugin如下
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<version>2.2</version>
<configuration>
<port>8080</port>
<path>/</path>
</configuration>
</plugin>
即把maven使用的tomcat版本修改为tomcat7 使用时用以下命令
并且修改了jdk编译版本(但还未清楚最后maven在使用时是之前配置的jdk10还是在pom.xml修改后的jdk1.8,,因为不加以下的代码而只修改使用tomcat版本的代码也能运行,,以后有待考虑)
<!--下面这个是配置的jdk版本为 1.8,这里需要使用 maven 的插件来设置:
在 pom.xml 中加入: (但是不知道是不是和tomcat的版本有关系)
-->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.8</source>
<target>1.8</target>
<encoding>UTF-8</encoding>
</configuration>
</plugin>
最后就能访问Servlet并跳转到相应的jsp页面了 @_@
plus:在网上查找资料后发现说tomcat的版本必须大于等于JDK的版本但我的jdk10和tomcat7能匹配?(以后有待考虑)
plus2:以下为 查看maven相关的系统信息(包含使用的jdk)的cmd命令
mvn help:system
plus3: tomcat与jdk版本对应表
3.使用maven时,不需要使用本地安装的tomcat,而是使用maven所集成的tomcat插件对项目进行构建,导致自己使用maven依赖导入的jar包和tomcat的jar包冲突
jar包冲突异常图
解决方法:修改jar包作用范围
测试总结:
默认引入 的 jar 包 ------- compile 【默认范围 可以不写】(编译、测试、运行 都有效 )
servlet-api 、jsp-api ------- provided (编译、测试 有效, 运行时无效 防止和 tomcat 下 jar 冲突)
jdbc 等驱动 jar 包 ---- runtime (测试、运行 有效 )
junit等 ----- test (测试有效)