第一次搭建Maven工程走了很多弯路,现在总算把项目搭起来并且能正常运行了。故总结一下教训
1.在建立Maven工程前,先确定成功下载安装了Maven。 命令行用 mvn -v 检验
找到Maven的安装目录C:Program Filesapache-maven-3.5.2conf中的setting.xml文件,打开后配置本地仓库
<localRepository>C:/Users/lts/.m2/repository</localRepository> (注意这里的“/”不是文件路径的“”)
配置镜像: <mirror>
<id>alimaven</id>
<mirrorOf>central</mirrorOf>
<name>aliyun maven</name>
<url>http://maven.aliyun.com/nexus/content/groups/public</url>
</mirror>
</mirrors>
配置JDK的版本
<profile>
<id>jdk-9.0.4</id>
<activation>
<activeByDefault>true</activeByDefault>
<jdk>9.0.4</jdk>
</activation>
<properties>
<maven.compiler.source>9.0.4</maven.compiler.source>
<maven.compiler.target>9.0.4</maven.compiler.target>
<maven.compiler.compilerVersion>9.0.4</maven.compilerVersion>
</properties>
</profile>
将settings.xml复制到本地仓库地址
然后在eclipse中的Windows->preference->Maven->User Settings配置远程仓库地址和本地仓库地址
如果无法读取settings.xml文件,则将远程和本地仓库分别设置为
C:Userslts.m2settings.xml
C:Userslts.m2 epository
这样maven配置成功
2.Maven项目直接在Tomcat中启动后,报如下错误
经检查,web.xml文件没有问题。代码也没有问题。只可能是缺少jar包,jar包冲突,或者jar包版本不一致。
在项目中Run as Maven build根据控制台提示找出冲突的jar包,换成版本更高的jar包
3.项目可以启动后出现如下错误:
com.mysql.cj.core.exceptions.InvalidConnectionAttributeException: The server time zone value '���
Caused by: com.mysql.cj.core.exceptions.InvalidConnectionAttributeException: The server time zone.
经分析,应该跟数据库连接有关,因为我的jar包是mysql-connector-6.6.在6.2以上要把驱动类写成
driverClass="com.mysql.cj.jdbc.Driver"
URL中添加后缀变成:
connectionURL="jdbc:mysql://localhost:3306/ssm_crud?useUnicode=true&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=UTC"
以上错误解决。