簡體   English   中英

源文件夾不在 Java 構建類路徑上,創建 Java 包

[英]Source folder is not on the Java build class path, creating Java package

我正在嘗試在排序下創建一個包合並,但它說:

源文件夾不在 Java 構建類路徑上

在此處輸入圖片說明

所以我右鍵單擊 sort 文件夾,並嘗試將其添加到 Java 構建類路徑中。 但唯一的選項是排除,所以這意味着它應該已經包含在類路徑中。在此處輸入圖片說明

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

編輯:

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

從“src”文件夾本身的上下文菜單中執行此操作。 “源文件夾”字面意思是在 Java 構建路徑中指定的源文件夾,而不僅僅是某個恰好包含源的文件夾。 Name 字段需要實際的、正確的“這是其中的 .java 文件將聲明的內容”,限定包名稱。 如果您只想在其中創建一個新文件夾,然后創建一些新的 .java 文件,您可以使用新建文件夾向導。

編輯:另外,請記住,項目和包資源管理器視圖之間的包展示設置(從視圖的本地菜單設置 - 倒三角形)可能不同。 如果事情看起來與您想要的相反,請根據您認為合適的方式進行調整。

只需右鍵單擊文件夾src -> 構建路徑 -> 使用源文件夾就是這樣

您是否已經創建了合並包。 也許您可以選擇 eclipse 不顯示空包。 如果已經創建,只需右鍵單擊 MergeSort.java 文件 > Refactor > Move 並選擇 sort 下的新合並包。 這會將文件移動到那里,eclipse 將顯示該包。

或者,如果您尚未創建合並包,請執行以下操作:創建一個文件夾(不是包)Algorithms/src/sort/merge。 然后在eclipse樹中找到它>右鍵單擊它>構建路徑>用作源文件夾

順便提一句。 您只排除了 sort 包,因為它已經在構建路徑上(至少在屏幕截圖中)

干杯

只需在您的默認源文件夾中創建一個包並將其命名為sort.merge

右鍵項目->屬性->java構建路徑->添加需要的源構建路徑

在此處輸入圖片說明

Java 包命名約定定義了一個句點. 標記一個子文件夾。 所以lorem.ipsum.dolor.sit.amet將創建一個文件夾結構,如lorem/ipsum/dolor/sit/amet Eclipse 支持這種格式。 因此,要創建“子包”,您需要在源文件夾中創建一個名為sort.merge的包。 這將自動創建所需的文件夾結構。

但是您說得對,我一直不明白為什么 Eclipse 不以反映底層文件夾結構的方式顯示包結構。 也許有人可以闡明該設計決策?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM