Eclipse正试图在我的.svn目录中构建文件......我怎么能告诉它停止?

时间:2009-07-18 00:23:24

标签: java android eclipse svn

我将我的Android项目存储在Subversion存储库中。在最近洗了一堆东西后,我开始遇到很多错误,如:

syntax error    entries /project_name/src/.svn  line 1  Android AIDL Problem
syntax error don't know what to do with ""  entries /project_name/src/.svn  line 28 Android AIDL Problem

等。

似乎Eclipse正在尝试在.svn目录中构建文件。此设置过去工作正常,我该如何解决这个问题?

7 个答案:

答案 0 :(得分:12)

虽然您可以通过安装已经提到的Subversive等插件来解决此问题,但您也可以在没有插件的情况下解决此问题。

您可以告诉eclipse忽略存储在构建路径中的.svn目录中的文件。为此,通过右键单击项目打开项目属性,然后选择左侧的Java Build Path选项。查找Source标签。在那里,您将看到所有源文件夹(如果您没有更改任何内容,那么对于Android SDK 1.5r3,这将是gensrc。双击树中的Excluded项,为每个目录添加两个排除模式:

.svn/**
**/.svn/**

您应该设置项目目录的svn:ignore关键字以忽略包含自动生成的文件的目录,因为它们可以随时生成并且只占用存储库中的空间。对于当前的Android SDK 1.5r3项目,这将是bingen目录。如果忽略gen文件夹,这也意味着您不需要为此目录设置排除模式,因为Subversion不会在忽略的项目中创建.svn目录。

编辑 Henrik 所述,在更改后清理项目是明智的。

答案 1 :(得分:5)

为Eclipse安装Subclipse插件。然后Eclipse将知道.svn文件夹的用途,并退出将它们视为源目录:

http://subclipse.tigris.org/

答案 2 :(得分:4)

这对我有用:

  • 从eclipse(而不是从磁盘)删除项目。
  • “文件” - >“新..” - >“项目” - >“Android项目”
  • “新Adroid项目”中的
  • -Dialog选择“从现有源创建项目”(在HDD上找到您的项目) - >“完成”

我的.classpath文件

<?xml version="1.0" encoding="UTF-8"?><classpath>
<classpathentry kind="src" path="src"/>
<classpathentry kind="src" path="gen"/>
<classpathentry kind="con" path="com.android.ide.eclipse.adt.ANDROID_FRAMEWORK"/>
<classpathentry kind="output" path="bin"/></classpath>

答案 3 :(得分:0)

您的构建路径中有src文件夹,因此,它会尝试在.svn目录中构建任何内容。我的建议是从src文件夹中删除.svn文件夹。

或者,您可以选择从构建路径中排除文件夹。如果您有Eclipse 3.4+,请转到构建路径,在源代码下,您应该在构建路径的源文件夹中列出的src文件夹下看到名为Excluded的内容。

转到编辑,您可以包含一个模式,以阻止.svn文件夹包含在构建路径中。

编辑:如果您希望将文件夹隐藏在软件包资源管理器中,请点击该视图顶部附近的向下数组(它是一个白色箭头)并点击过滤器。然后选中名称过滤器模式的框并输入.svn,该文件应隐藏该文件夹。

答案 4 :(得分:0)

如果您有耐心或没有太多的文件夹,您可以在导航器视图中右键单击它,并确保检查派生属性。

这会导致eclipse忽略这些文件夹。

......嗯......等一下......你说你拖了很多东西......你是通过Windows资源管理器还是在日食里面做的?

SVN中有命令移动受源代码控制的文件夹,如果不使用它们,则SVN无法识别这些文件夹的原始文件,并且会将附加到文件本身的历史记录隐藏起来。最糟糕的一些我得到了一些奇怪的副作用,唯一的解决方案是

  1. 删除所有.svn文件夹
  2. 将所有来源复制到其他地方
  3. 从头开始结账
  4. 使用备份2
  5. 覆盖存储库中的文件
  6. 然后我通过SVN存储库资源管理器从eclipse或直接在SVN中重新排列,然后重新开始使用新的结帐。

    通常eclipse与这些.svn文件夹处理得相当好,但是在极少数情况下它会彻底搞砸我不得不从头开始,有时会直接从脉冲重新安装eclipse(尝试脉冲它确实值得,重新安装你的环境只需点击几下,就可以在新系统上进行划痕。

    无论如何..希望这有助于...祝你好运

答案 5 :(得分:0)

我建议使用Subversive插件来提供与Eclipse一起使用svn存储库的正确集成。

答案 6 :(得分:0)