【问题标题】:Eclipse CVS ignores .class files -- how can I turn that off?Eclipse CVS 忽略 .class 文件——我该如何关闭它?
【发布时间】:2009-12-07 17:28:59
【问题描述】:

我想通过 Eclipse 将新的 .class 文件提交到 CVS,但是这些文件被忽略了,我不知道在哪里关闭它。 Preferences 窗口中有一个用于执行此操作的部分,但 .class 未列出。

【问题讨论】:

  • 请问您为什么要将 .class 文件提交到存储库中?通常只有源文件和静态库被提交到存储库。这是因为源代码的每次更改都会导致类文件的更改,然后也需要重新提交。最美好的祝愿,法本
  • 我听到了。说来话长,但不用说我们暂时需要将类文件提交到 CVS。
  • 我最终弄明白了...这有点奇怪:您必须进入“首选项”窗口(团队 -> 忽略的资源)并添加“.class”作为忽略的资源,然后取消选中复选框。
  • 丹尼尔,很高兴你找到了答案,但这仍然是一个相当糟糕的主意。请注意从谷歌或其他地方来到这里的任何人:阅读下面的答案。不推荐将已编译或以其他方式生成的文件检查到 源代码 代码控制中。
  • 我完全同意,这不是一个好主意,我一般不会推荐它。只是目前阻力最小的情况之一......

标签: java eclipse class cvs ignore


【解决方案1】:

首选项 > 团队 > 忽略的资源

另外,切换到资源透视图以查看所有文件。

【讨论】:

    【解决方案2】:

    首先我想回应其他答案的观点,因为将编译的源文件检查到源代码管理中是一个非常糟糕的主意,因为这意味着任何时候有人对源代码进行更改,他们'一定要记得签入相应的类文件。

    关于您的具体问题,this page 表示所有生成的 .class 文件都会自动标记为派生,这意味着它们不会被自动签入:

    任何标记为派生的资源都将被 Team CVS 的版本管理自动忽略。一些构建器,例如 Java 构建器,将其所有构建输出(例如 .class 文件)标记为派生的。

    据我所知,没有办法改变这一点,这应该强调这是一个坏主意。

    【讨论】:

      【解决方案3】:

      我最终弄明白了...这有点奇怪:您必须进入“首选项”窗口(团队 -> 已忽略资源)并将“.class”添加为被忽略的资源,然后取消选中该复选框。

      【讨论】:

        【解决方案4】:

        您确定要将编译后的文件检入 CVS 吗?我从来没有参与过这样的项目——这是一种不好的做法。

        您应该只将源代码真正存储在 CVS 中,而不是从源代码生成的文件。没有真正需要签入这些,因为它们可以在任何时间点从源代码重新生成。

        通过签入源代码的输出,您只会引入由于有人忘记签入 .class 文件等而导致头痛的可能性。

        【讨论】:

        【解决方案5】:

        如果有人仍然感兴趣,虽然我绝对同意将 .class 文件检入 CVS 是一种不好的做法,但有时我认为这是合理的。

        例如,在我的例子中,我有一个包含 EJB 3.1 的应用程序,它必须由外部代理 (ControlM) 调用。由于 EJB 由远程进程调用,因此需要生成的存根 (.class)。在这种情况下,我将这个生成的存根类签入到 CVS 中,因为我希望它可供所有团队成员使用。

        我要做的是:

        1. 打开导航器视图。 (在这个视图中,所有 .class 都可以通过 默认)
        2. 选择.class/右键/Team/添加到版本控制
        3. 接受警告说你要添加被忽略 资源

        现在 .class 可以像往常一样提交了。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2023-04-05
          • 1970-01-01
          • 1970-01-01
          • 2019-09-02
          • 2022-08-21
          相关资源
          最近更新 更多