繁体   English   中英

Eclipse API:如何检查IFile是.project还是.classpath文件?

[英]Eclipse API: How to check whether an IFile is a .project or .classpath file?

简而言之,这是我的问题:

如果提供了IFile,是否可以检查IFile是.classpath文件还是.project文件?

这是完整的独家新闻:

我正在实现一个资源同步器,作为Eclipse插件的一部分,该插件使用我准备接收的“资源已更改的消息”来创建“复制代码库”(整个工作区的副本)。 这些消息指示必须添加/更改/删除的资源。 例如,当添加一个Java项目时,我将按以下顺序接收以下4条消息:

  1. {添加“ .classpath”文件}
  2. {添加“ .project”文件}
  3. {添加“ org.eclipse.jdt.core.prefs”文件}
  4. {ADD“ src” FOLDER}。

为了在此示例中创建PROJECT资源,我确保消息中每个资源的父级都存在。 因此,当我创建每个资源时,我都会检查资源的父资源是否存在-如果不存在,则会创建父资源(如示例中第一个“ .classpath”消息的PROJECT资源),然后递归检查父资源的父资源存在。

我的问题是创建项目时Eclipse自动创建一个“ .project”文件,因此{ADD“ .project” FILE}消息变得多余。 如果我只能检测到何时处理{ADD“ .classpath” FILE}消息,则可以有选择地创建一个PROJECT,然后立即删除自动生成的“ .project”文件,并且在处理下一个时没有任何冲突。消息(即{ADD“ .project” FILE})。

这些文件名是固定的,因此如果文件位于项目根文件夹中,则只需检查名称即可。

org.eclipse.core.resources.IProjectDescription.DESCRIPTION_FILE_NAME.project的标准常量, org.eclipse.jdt.core.IJavaProject.CLASSPATH_FILE_NAME.classpath的标准常量。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM