Eclipse工程.project,.classpath,.setting介绍

本文详细介绍了Eclipse普通Java工程和Maven工程的配置文件,包括.project文件(定义项目结构)、.classpath文件(指定编译时classpath)和.setting文件夹(存储项目参数设置,如org.eclipse.core.resources.prefs用于记录编码格式等信息)。重点解析了.src和.bin目录的作用,并探讨了Maven工程的相关参考。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1 普通Java工程

  • src目录:java 源文件路径
  • bin目录:java 编译后文件存放路径、资源文件存放路径

1.1 .project文件

项目文件,项目的结构都在其中定义,例如:

<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
	<!-- name里的内容代表项目名字,对应了Eclipse项目的名称,不是Maven的finalName -->
	<name>Demo_Java</name>
	<!-- 工程注释描述 -->
	<comment></comment>
	<projects>
	</projects>
	<!-- 有序的列表,定义了一系列的构建命令(buildCommand) -->
	<buildSpec>
		<buildCommand>
			<!-- 项目构建命令的名字 -->
			<name>org.eclipse.jdt.core.javabuilder</name>
			<!-- 构建命令初始化时需要传递的参数(一般看到的都是空的) -->
			<arguments>
			</arguments>
		</buildCommand>
	</buildSpec>
	<!-- 运行时需要的额外Eclipse插件 -->
	<!-- 项目中用到的一些特性的列表 -->
	<natures>
		<!-- 每一个特性的的名字 -->
		<nature>org.eclipse.jdt.core.javanature</nature>
	</natures>
</projectDescription>

1.2 .classpath文件

定义了你这个项目在编译时所使用的classpath,如下例子:

<?xml version="1.0" encoding="UTF-8"?>
<classpath>
	<!-- kind="con",运行时的系统环境 -->
	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8"/>
	<!-- kind="src",存放源文件的文件夹,可以有多个 -->
	<classpathentry kind="src" path="src"/>
	<!-- kind="src",存放源文件的文件夹,此处为引用了其他项目 -->
	<classpathentry combineaccessrules="false" kind="src" path="/TestDemo"/>
	<!-- kind="lib",工程的library的具体位置信息。可以有多个  -->
	<classpathentry kind="lib" path="lib/junit-4.12.jar"/>
	<!-- kind="output",编译后的.class文件存放位置 -->
	<classpathentry kind="output" path="bin"/>
</classpath>

1.3 .setting文件夹

存放当前工程的参数设置(包括项目的设置参数,资源文件的编码格式设置(如果资源文件是默认的 ISO-8859-1 的话并不会被记录下来,其他格式就会被记录下来))
  Eclipse项目.settings目录下的配置比较杂,各种后缀名的都可以见到,绝大多数是文本文件,格式为properties(多数以.prefs为后缀名)或XML(多数以.*、.xml为文件名)格式的为主。prefs 后缀的意思:首选项,也就是这些文件定义的是项目的首选项信息

1.3.1 org.eclipse.core.resources.prefs

eclipse 用来记录当前项目基本设置信息,包括项目编译的 jdk 版本等等相关信息。

1.3.2 org.eclipse.core.resources.prefs

此文件用来记录 资源文件 的首选项,对于资源文件来说他们的首选项就是编码格式了,这里面记录的资源文件的编码格式都是那些没有使用默认编码格式的文件,比如有些文件使用的是 UTF-8:encoding//source/constant.properties=UTF-8。

1.4 参考

Eclipse java 工程目录及参数文件解析

2.Maven工程

参考

Eclipse中.setting目录下文件介绍

<think>好的,用户现在的问题是解决JRebel中mapper.xml修改后未生效的问题。首先,我需要回忆一下JRebel的基本工作原理,它主要用于热部署,避免应用重启。然后,用户提到的是mapper.xml文件,这通常和MyBatis框架相关,所以需要考虑MyBatis的配置和JRebel的整合情况。 接下来,我应该考虑可能的原因。首先,检查JRebel是否正确地配置在项目中,确保相关的插件或依赖已经正确安装。然后,确认mapper.xml文件是否被JRebel正确监控,可能需要检查配置文件中是否包含这些文件的路径。另外,MyBatis本身的缓存机制可能会导致修改不生效,比如是否启用了二级缓存或者本地缓存,这时候即使文件更新了,缓存可能没有清除,导致结果不变。 另外,项目的构建工具如Maven或Gradle是否有影响,可能需要重新编译资源文件,或者检查资源文件的输出目录是否正确。还有,JRebel的日志信息可能会有帮助,查看启动时的日志,确认是否有关于mapper.xml文件的热部署记录,或者是否有错误提示。 用户提供的引用内容中有关于null指针和类型的问题,但看起来和当前问题关联不大,可能是之前的问题的引用,但暂时可以忽略这部分,专注于JRebel和MyBatis的配置问题。 可能的解决步骤包括:1. 确认JRebel正确启用,查看启动时的JRebel初始化日志;2. 检查JRebel的配置,确保mapper.xml所在的目录被包含在监控路径中;3. 检查MyBatis的配置,比如是否关闭了缓存,或者在配置文件中设置了自动重新加载;4. 清理项目构建,确保修改后的文件被正确部署到输出目录;5. 重启应用服务器,虽然JRebel旨在避免重启,但有时候首次配置可能需要重启;6. 查看JRebel的官方文档或社区,是否有已知的问题或解决方案。 此外,用户可能需要检查IDE的设置,比如是否自动构建项目,或者是否有缓存的问题。例如,IntelliJ IDEA有时候需要手动重新编译资源文件,或者需要配置JRebel插件来监控特定类型的文件。 总结下来,需要从JRebel配置、MyBatis缓存、项目构建和IDE设置等多个方面排查问题,逐步验证每个环节是否正常,从而找到导致mapper.xml修改未生效的具体原因。</think>针对JRebel中mapper.xml修改后未生效的问题,以下是分步解决方案: ### 1. 验证JRebel基础配置 - 确认项目已正确集成JRebel插件,启动日志应包含: ```log [JRebel] License activated successfully [JRebel] Configuration: <项目路径>/.jrebel/jrebel.xml ``` - 检查IDE插件状态(IntelliJ/ Eclipse需启用JRebel代理)[^1] ### 2. MyBatis配置检查 在`mybatis-config.xml`中添加热加载支持: ```xml <configuration> <settings> <setting name="cacheEnabled" value="false"/> <!-- 关闭二级缓存 --> <setting name="lazyLoadingEnabled" value="false"/> <setting name="aggressiveLazyLoading" value="false"/> </settings> </configuration> ``` 同时确保Mapper接口配置了`flushCache`属性: ```xml <select id="selectUser" resultType="User" flushCache="true"> SELECT * FROM users </select> ``` ### 3. 资源文件监控配置 在`jrebel.xml`中添加显式监控路径: ```xml <configuration xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <web> <path>src/main/webapp</path> </web> <classpath> <dir name="src/main/resources/mappers"/> <!-- 指定mapper路径 --> </classpath> </configuration> ``` ### 4. 构建工具配置验证 对于Maven项目,确保`pom.xml`包含: ```xml <build> <resources> <resource> <directory>src/main/resources</directory> <filtering>true</filtering> <!-- 确保xml文件被识别为资源 --> <includes> <include>**/*.xml</include> </includes> </resource> </resources> </build> ``` ### 5. 缓存清理操作 通过JRebel控制台执行命令: ```bash # 清理MyBatis缓存 jrebel.command=reload-mybatis # 强制刷新资源 jrebel.command=refresh-resources ``` ### 6. 文件系统同步验证 在IDEA中执行: 1. File -> Settings -> Build -> Compiler 2. 勾选"Build project automatically" 3. 设置"Allow auto-make to start even if..."
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值