源文件夹不在Java构建类路径上,创建Java包

时间:2012-06-06 07:48:35

标签: java eclipse class classpath package

我正在尝试在排序下创建一个包合并,但它说:

  

源文件夹不在Java构建类路径

enter image description here

所以我右键单击sort文件夹,并尝试将其添加到Java构建类路径。但只有选项有排除,所以这意味着它应该已经包含在类路径中。 enter image description here

那么如何在排序下创建包?

编辑:

添加.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>

6 个答案:

答案 0 :(得分:6)

从“src”文件夹本身的上下文菜单中执行此操作。 “源文件夹”字面上表示在Java Build Path中指定的源文件夹,而不仅仅是恰好包含源的某个文件夹。 Name字段需要实际的,正确的“这是它所声明的.java文件”,合格的包名。如果你只是想在那里创建一个新的文件夹然后制作一些新的.java文件,你可以使用New Folder向导。

编辑:另外,请记住,“程序包演示文稿”设置(从视图的本地菜单设置 - 颠倒的三角形)可能在“项目”和“程序包资源管理器”视图之间有所不同。如果情况与您的喜好相反,请根据您的需要进行调整。

答案 1 :(得分:1)

只需在默认的源文件夹中创建一个包,并将其命名为sort.merge

答案 2 :(得分:1)

您是否已创建合并包?也许你可以选择eclipse不显示空包。如果您已创建它,只需右键单击MergeSort.java文件&gt;重构&gt;移动并选择排序下的新合并包。这将把文件移到那里,eclipse将显示包。

或者,如果尚未创建合并包,请执行以下操作:创建文件夹(不是包)Algorithms / src / sort / merge。然后在日食树中找到它&gt;右键单击它&gt;构建路径&gt;用作源文件夹

顺便说一下。你只排除了排序包,因为它已经在构建路径上(至少在截图中)

欢呼声

答案 3 :(得分:0)

Java包名称约定定义句点.标记子文件夹。因此lorem.ipsum.dolor.sit.amet将创建一个类似lorem/ipsum/dolor/sit/amet的文件夹结构。 Eclipse支持这种格式。因此,要创建“子包”,您需要在您的案例中名为sort.merge的源文件夹中创建一个包。这将自动创建所需的文件夹结构。

但是你是对的,我从来不明白为什么Eclipse没有以反映底层文件夹结构的方式显示包结构。也许有人可以阐明这个设计决定?

答案 4 :(得分:0)

右键单击文件夹 src - &gt;构建路径 - &gt;使用源文件夹只是这个

答案 5 :(得分:0)

右键项目->属性->java构建路径->添加需要的源到构建路径

enter image description here