2012-01-04 101 views
2

我一定做了一些非常愚蠢的事情,这导致了以下情况。基本上,在我编译过成功编译好的代码之后,所有的.class文件都突然被放入了.java文件所在的包文件夹中。一些.class文件甚至有像名字那样的数字。Eclipse编译在包文件夹中放了很多.class文件

ClassName.java 
ClassName.class 
ClassName$1.class 
ClassName$2.class 
ClassName$3.class 
ClassName$4.class 

它在导航器中看起来很乱,重建或清理项目不会使这些文件消失。

最后的代码改变我做了,它现在已经恢复了在类静态字段:

static { 
    if (System.getProperty("os.name").startsWith("Mac OS X")) { CONTROL_PANEL_WIDTH = 225; } 
    else { CONTROL_PANEL_WIDTH = 180; } 

System.out.println(System.getProperty("os.name")); // this is what I added; perhaps it was stupid 
} 

我一定做了一些愚蠢的。你能帮忙吗?

+0

清理项目只是从包文件夹中删除.class文件,然后再次将它们添加回来。 – TomaszRykala 2012-01-04 10:20:37

+0

所以你在'src /'而不是'bin /'下获得类文件?这是一个项目设置错误,与代码无关。你是否改变了代码之外的其他内容? – Viruzzo 2012-01-04 10:24:32

+0

这一定是它。我不认为我改变了任何东西,除非我做了一些不自主的键盘快捷方式或任何其他的东西,但是,我没有bin文件夹了。我会尝试调查项目设置。 – TomaszRykala 2012-01-04 10:28:16

回答

4

您可能已切换您的类的默认输出文件夹,可以通过右键单击您的项目来修复 - >Properties - >Java Build Path - >选项卡Source - >Default Output folder(将其设置为<ProjectName>/bin

你也可以检查.classpath文件在您的工作空间,其必须看起来像这样(输出文件夹的路径相对存储):

<?xml version="1.0" encoding="UTF-8"?> 
<classpath> 
    <classpathentry kind="src" path="src"/> 
    <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6"/> 
    <classpathentry kind="output" path="bin"/> 
</classpath> 
+0

就是这样!出于某种原因,bin文件夹变为了AWOL。我重新创建了它,将其设置为输出文件夹,并注意到我的新.class文件已经放在那里编译。之后,我从源文件夹中删除了.class文件,并且我的项目不受此影响。欢呼声! – TomaszRykala 2012-01-04 10:35:39

1

右键单击您的项目。选择构建路径/配置构建路径。选择源选项卡。确保默认输出路径不是您的/ src文件夹。

不知怎的,你或eclipse设法丢失了编译器的输出文件夹。

+0

是的,我的bin文件夹已经失效了。我已经重新创建并设置为输出文件夹。谢谢你的帮助。 – TomaszRykala 2012-01-04 10:36:33

2

右键单击您的项目,然后单击属性

搜索Java构建路径,

点击源,这里就有的配置,其中类必须

不要选中“允许输出文件夹的源文件夹“,并检查下面的路径是否良好

+0

这不好:)感谢您的帮助。 – TomaszRykala 2012-01-04 10:36:50