Eclipse 的 Workspace 下边有一个 .metadata 的目录,是做什么用的?

来源:互联网 发布:cn域名交易 编辑:程序博客网 时间:2024/05/01 08:23

Eclipse 的 Workspace 下边有一个 .metadata 的目录,是做什么用的?我应不应该把它加入到svn管理中?还是需要ignore它?


1L:

插件的log和配置,与项目无关


2L;

我知道的有两个用途

1。保存你对Eclipse的配置信息,

2。war发布信息会放到这里。(这个跟你的设定有关,默认是会放到这里的。)如果偶尔的你的修正不起作用,可能需要考虑这个问题。


3L:

http://book.csdn.net/bookfiles/220/10022010466.shtml
下面示例所显示的是一个工作空间的目录结构。该工作空间包含一个项目(a_project)、一个文件夹(a_folder)和两个文件(a.file1,a.file2)。

\workspace\.metadata

\workspace\.metadata\.plugins\org.eclipse.core.resources

\workspace\.metadata\.plugins\org.eclipse.ui

\workspace\.metadata\.plugins\org.eclipse.team.core

\workspace\a_project

\workspace\a_project\.project

D:\workspace\a_project\a.fi1e1

D:\workspace\a_project\a_fo1der

D:\workspace\a_project\a_fo1der\a.fi1e2

.project文件并不是由用户添加到a_project目录中,而是由org.eclipse.core.resources插件创建的。该文件用于存储项目自身的信息。.project文件的内容可以通过文本编辑器查看,但不要直接对它进行修改。我们将在本章后续部分的“项目描述”一节中对.project文件作进一步讨论。

每个工作空间都包含一个.metadata目录,它用于存储私有数据。.metadata目录包含一个.plugins目录,用于存储每个插件的状态数据。但在上例所显示的.metadata条目中并没有列出每个插件状态目录中的文件。您看到的.metadata\.plugins下的状态目录和文件的实际数目取决于加载的插件和使用的Eclipse的功能。

插件通过Plugin.getStateLocation方法获取一个到其状态目录的引用。当插件存储状态数据时,会在 .metadata\.plugins目录下创建一个与插件同名的目录。我们可以在这个目录下找到与插件相关的资源。

不要直接修改.metadata目录的内容。然而,有时您可以通过浏览或搜索目录树在其中找到有用的信息。例如,状态目录中的dialog_settings.xml文件存储了由指定的插件所保存的对话框内容。


4L:

这个是在些工作空间中Eclipse的配置文件, 如你修改了Eclipse的各种字体, 还有其中的各种设置, 都是保存到这个文件里的, 如果你把这个文件删除了, 那么Eclipse的设置又变回默认的了.


5L:

不用放到svn里。

.metadata 里保存的是你当前正在使用的eclipse的配置,包括workspace的布局、log等。

那是你对自己机器里的eclipse对当前项目的配置,是按个人喜好设置的,比如当前的workspace都显示哪些视图等。
如果你放到svn,那其他人将项目打包到自己机器中时,就将他自己机器里的eclipse的配置覆盖了,他机器里的eclipse也将显示按你的喜好自定义的workspace了。

所以,.metadata 是跟项目本身无关的,只跟各自机器中的eclipse设定有关,不需要放到svn里。

别人从svn里打包项目时,就不会造成连你个人eclipse的自定义配置也打包进去了。


6L:

"."开头的文件通常情况下是不光是在eclipse中是这样,很多程序都是如此,最典型就是linux系统中的一些文件,这种文件一般程序运作所需要的一些元信息,通常源代码管理中这些文件是不同步的,而管理工具通常都会有设置的API.如果有时不小心同步了这样的代码还会给小组开发带来麻烦,因为每个组员的开发环境是不同的,这些元信息通常是不样的,如果其它组员同步了这样的元信息很可能导致他自己的工程异常出现错


原创粉丝点击