学习Maven用Servlet向jsp传输数据时,访问servlet页面时出现错误
org.apache.jasper.JasperException: /show.jsp (line: 1, column: 63) Unable to read TLD "META-INF/c.tld" from JAR file "file:/D:/maven/repository/javax/servlet/jsp/jstl/jstl/1.2/jstl-1.2.jar": org.apache.jasper.JasperException: Failed to load or instantiate
学会看错误信息,才能更高效的解决问题
这种情况可能是jar包有问题
<dependency> <groupId>javax.servlet</groupId> <artifactId>servlet-api</artifactId> <version>2.5</version> <scope>provided</scope> </dependency> <dependency> <groupId>javax.servlet.jsp</groupId> <artifactId>jsp-api</artifactId> <version>2.0</version> <scope>provided</scope> </dependency> <!-- <dependency>--> <!-- <groupId>javax.servlet.jsp.jstl</groupId>--> <!-- <artifactId>jstl</artifactId>--> <!-- <version>1.2</version>--> <!-- </dependency>--> <!--上面的jar包过时了--> <dependency> <groupId>javax.servlet</groupId> <artifactId>jstl</artifactId> <version>1.2</version> </dependency>
添加数据库依赖时,要与本地安装的数据库版本相同
<dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>8.0.33</version> </dependency>
修改Maven安装目录时,路径不要错
<!-- localRepository | The path to the local repository maven will use to store artifacts. | | Default: ${user.home}/.m2/repository <localRepository>/path/to/local/repo</localRepository> --> <localRepository>D:\\maven\\repository</localRepository> <!-- interactiveMode | This will determine whether maven prompts you when it needs input. If set to false, | maven will use a sensible default value, perhaps based on some other setting, for | the parameter in question. | | Default: true <interactiveMode>true</interactiveMode> -->
要正确添加镜像网站,不然下载依赖和创建项目的速度很慢
<mirrors> <!-- mirror | Specifies a repository mirror site to use instead of a given repository. The repository that | this mirror serves has an ID that matches the mirrorOf element of this mirror. IDs are used | for inheritance and direct lookup purposes, and must be unique across the set of mirrors. | <mirror> <id>mirrorId</id> <mirrorOf>repositoryId</mirrorOf> <name>Human Readable Name for this Mirror.</name> <url>http://my.repository.com/repo/path</url> </mirror> --> <!--配置具体仓库的下载镜像 --> <mirror> <id>aliyunmaven</id> <mirrorOf>*</mirrorOf> <name>aliyun-repository</name> <url>https://maven.aliyun.com/repository/public</url> </mirror> </mirrors>
java: 错误: 不支持发行版本 5的相关版本问题
这种情况我们可以进行相关配置
做Spring整合MyBatis遇到的问题
Caused by: java.lang.UnsupportedClassVersionError: org/mybatis/spring/SqlSessionFactoryBean has been compiled by a more recent version of the Java Runtime (class file version 61.0), this version of the Java Runtime only recognizes class file versions up to 55.0
解决方法:
一、升级更换JDK版本
二、更换依赖版本
<dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis-spring</artifactId> <version>2.0.6</version> </dependency>
之前使用 mybatis-spring 3.0以上的版本总会出现各种错误,比如 typeAliasesPackage 不生效
Caused by: org.apache.ibatis.type.TypeException: Could not resolve type alias 'User'. Cause: java.lang.ClassNotFoundException: Cannot find class: User
还有
Caused by: java.lang.ClassNotFoundException: org.springframework.aot.AotDetector
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:641)
at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:188)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:525)
... 33 more改成2.0的遇到的错误就少很多
springmvc版本过高,
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>报红
改成5.0的就好
解决文章:
com.mchange.v2.resourcepool.BasicResourcePool$ScatteredAcquireTask@解决方案_Jecretariat的博客-CSDN博客
java.lang.NoClassDefFoundError: org/springframework/aot/AotDetector解决方法_心是你的℡的博客-CSDN博客