1.Error:java: Compilation failed: internal java compiler error
错误原因 导致这个错误的原因主要是因为jdk版本问题,此处有两个原因,一个是编译版本不匹配,一个是当前项目jdk版本不支持。 查看项目的jdk ... 错误现象 使用Idea导入新项目或升级idea或新建项目时会出现以下异常信息: Error: java: Compilation failed: internal java compiler error 错误原因 导致这个错误的原因主要是因为jdk版本问题,此处有两个原因,一个是编译版本不匹配,一个是当前项目jdk版本不支持。
一般是:
这个 改成1.8即可
编译器插件自3.0以后,创建的maven项目默认的资源和目标项目配置都是1.5,如果你项目当前的jdk不是1.5,那么就会报编译错误,版本不匹配。所以要设置jdk的编译器版本。
pom.xml文件中设置Java编译器版本
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.8.0</version>
<configuration>
<source>1.8</source> <!--language level-->
<target>1.8</target> <!--java compiler version-->
</configuration>
</plugin>
</plugins>
2.java.sql.SQLException: Error setting driver on UnpooledDataSource. Cause: java.lang.ClassNotFoundException: Cannot find class: com.mysql.cj.jdbc.Driver
网路上百度了好多
其他文章上写的几点 我觉得有可能涉及列举下
错误可能性:
1.xml映射错误,检查完毕,
2.driver写错了, 多了空格,等等,
3.检查maven依赖,好像没问题,很多人就是把mysql-connector-java版本从5升到8就好了:
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
<!--configuration core file-->
<configuration>
<environments default="mysql">
<environment id="mysql">
<transactionManager type="JDBC"/>
<dataSource type="POOLED">
<property name="driver" value="com.mysql.cj.jdbc.Driver"/>
<property name="url"
value="jdbc:mysql://localhost:3306/mybatis?characterEncoding=UTF-8"/>
<property name="username" value="root"/>
<property name="password" value="root"/>
</dataSource>
</environment>
</environments>
<!--a Mapper.xml need regist in Mybatis core configuration file-->
<mappers>
<mapper resource="com/qian/dao/UserMapper.xml"/>
</mappers>
</configuration>
<!--mysql-->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.28</version>
</dependency>
而我的问题则是:JDBC驱动jar包的下载和导入有问题
之前是mysql的jar包没导入进去
Error querying database. Cause: java.sql.SQLException: Error setting driver on UnpooledDataSource.
Cause: java.lang.ClassNotFoundException: Cannot find class: com.mysql.jdbc.Driver这个报错的核心就是没有成功加载驱动 从1.配置文件书写问题;2.驱动的版本有点低;3.架包的是否导入
3.Maven资源导出问题
Maven的核心思想:约定大于配置
·有约束,不要去违反
Maven由于它的约定大于配置,我们之后可能遇到我们写的配置文件,无法被导出或者生效的问题,解决方案:
<build>
<resources>
<resource>
<directory>src/main/resources</directory>
<includes>
<include>**/*.properties</include>
<include>**/*.xml</include>
<include>**/*.tld</include>
</includes>
<filtering>false</filtering>
</resource>
<resource>
<directory>src/main/java</directory>
<includes>
<include>**/*.properties</include>
<include>**/*.xml</include>
<include>**/*.tld</include>
</includes>
<filtering>false</filtering>
</resource>
</resources>
</build>