MyBatis報錯 The project was not built due to "Could not delete ''.". Fix the problem, then try ref

主要代碼

1、MyBatis-config.xml*

<!-- 第一種方式:設置properties -->
<configuration>
	<properties resource="database.properties"/> 
	<!-- 注: 如果兩種方式同時進行設置,則會先執行property子節點中的配的值,
		然後會去讀取resource的文件中的值,如果有相同的屬性名則會覆蓋property,
		結論:resource引入的文件屬性值的優先級高於property子節點中配的值-->
	<properties>
		<property name="driver" value="com.mysql.jdbc.Driver"/>
		<property name="url" value="jdbc:mysql://localhost:3306/smbms"/>
		<property name="username" value="root"/>
		<property name="password" value="1998"/>
	</properties>
	<settings>
		<setting name="logImpl" value="LOG4J"/>
	</settings>
	<typeAliases>
		<!-- <typeAlias type="cn.smbms.pojo.User" alias="user"/> -->
		<package name="cn.smbms.pojo"/>
		
	</typeAliases>

	<!--通過default屬性指定一個默認運行環境ID  -->
	<environments default="development">
		<environment id="development">
		<!-- 事務管理器兩種 JDBC/MANAGED-->
			<transactionManager type="JDBC"/>
			<!-- 數據源類型三種UNPOOLED | POOLED | JNDI -->
			<!--  POOLED 使用的是連接池的原理-->
			<dataSource type="POOLED">
				<property name="driver" value="${driver}"/>
				<property name="url" value="${url}"/>
				<property name="username" value="${username}"/>
				<property name="password" value="${password}"/>
			</dataSource>
		</environment>
	</environments>

	<!-- 將mapper文件加入到配置文件中 -->
	<mappers>
		<!--  第一種方式:使用類資源路徑獲取資源-->
		<mapper resource="cn/smbms/dao/user/UserMapper.xml"></mapper> 
		<mapper resource="cn/smbms/dao/provider/ProviderMapper.xml"></mapper> 
		<!-- 第二種方式:使用url獲取資源 -->
		<!-- <mapper url="file:///D:/UserMapper.xml"></mapper> -->
	</mappers> 

2、UserMapper.xml(實體類User表與sql語句之間的映射)

在這裏插入圖片描述
3、單元測試代碼
在這裏插入圖片描述
以上代碼主要做對User用戶表的個數進行統計,並輸出統計結果,第一次運行報了下面這個錯。

  • (0 ms) - 2019-1-3 11:01:57DEBUG Logging initialized using ‘class org.apache.ibatis.logging.log4j.Log4jImpl’ adapter.
  • (4 ms) - 2019-1-3 11:01:57DEBUG Logging initialized using ‘class org.apache.ibatis.logging.log4j.Log4jImpl’ adapter.
  • (18 ms) - 2019-1-3 11:01:57DEBUG PooledDataSource forcefully closed/removed all connections.
  • (18 ms) - 2019-1-3 11:01:57DEBUG PooledDataSource forcefully closed/removed all connections.
  • (19 ms) - 2019-1-3 11:01:57DEBUG PooledDataSource forcefully closed/removed all connections.
  • (19 ms) - 2019-1-3 11:01:57DEBUG PooledDataSource forcefully closed/removed all connections.

在進行程序調試後,發現程序在執行到以下這句
在這裏插入圖片描述
跳出了try塊進入異常處理catch塊,所以初步判斷是MyBatis-config.xml文件編寫有誤,在xml文件更改正確後,重新執行方法時,控制檯又報出以下錯誤,並且項目名一直標紅色的×角標,但是項目中實際上沒有報錯的文件。
在這裏插入圖片描述

錯誤原因

在項目中對java文件或xml文件進行修改後,造成已編譯的class文件與現有java文件不匹配,需要重新編譯

解決方案

右擊項目–source–Clean Up—清除項目中已生成的class文件,重新編譯,刷新項目,如果問題還是沒有得到解決那就重啓eclipse或重啓電腦就ok了。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章