如何将实用程序 .java 作为文件夹放入库中,以便可以将其方法用于多个 Java 项目?

how do i put utilities.java into a library as a folder so that I can use its methods with multiple java projects?

提问人:DSlomer64 提问时间:8/24/2020 更新时间:8/25/2020 访问量:462

问:

我有一个名为实用程序的文件位于我的文件夹中,我想在我处理的任何 java 项目中使用其中的方法。utilities.java...\NetbeansProjects\Utilities

如果我右键单击文件夹,则有一个选项可以包含,因此我选择该选项并找到并选择文件夹和它的绝对路径,如图所示,这会将文件夹添加到文件夹中,如图所示。LibrariesJAR/folder...UtilitiesUtilitiesLibraries

但是我如何引用其中的方法呢?Utilities.java

import不提供任何帮助,我每次尝试引用时得到的都是.Cannot find symbol

我无法变成文件(我可以吗??),因为选项是灰色的。Utilities.java.jarCompile

我应该为每个此类未解析的外部引用添加什么前缀,以便将此类方法成功链接到我的代码?

无论我尝试只是还是,我都会收到错误,并建议更改为一些不适当的导入。importimport static

令人恼火的是,我认为我以前已经成功地做到了这一点......

enter image description here

enter image description here

java 共享库 未解析的外部 lib 实用程序

评论


答:

0赞 andrewJames 8/25/2020 #1

根据您的屏幕截图,您似乎使用的是旧版本的 NetBeans(可能是 v8.2 或类似版本)。我会假设这一点 - 但如果可能的话,值得升级。

通常,我建议创建两个 NetBeans 项目,然后将实用程序项目作为依赖项包含在应用程序项目中。

您可以使用 NetBeans 的“库”功能(如屏幕截图所示),但我认为只创建项目更简洁,然后可以根据需要由 Git/Mercurial/etc. 作为单独的项目进行管理,而无需依赖特定于 NetBeans 的库管理功能。

基于 Ant 的方法

对于基于 Ant 的方法(NetBeans 8 的默认方法),如下所示:

enter image description here

以上创建如下:

创建实用程序项目:

  1. Java > Java >类库中的新建项目的文件>
  2. 项目名称:MyUtilities
  3. 创建软件包和实用程序 .java 文件。添加所需的代码。
  4. 清理并生成项目。

创建一个项目以使用实用程序 JAR:

  1. Java > Java 应用程序>新建项目的文件>
  2. 项目名称:MyApplication
  3. 右键单击项目资源管理器中的“MyApplication”,然后选择“属性”弹出窗口。
  4. 库>添加项目 - 找到 MyUtilities 项目并选择它,单击“添加项目 JAR 文件”。

现在,您将看到该项目的 jar 文件作为 MyApplication 的库依赖项之一列出。

清理并构建项目后,您将看到如下文件结构:

enter image description here

注意:对于 NetBeans 12,情况类似,不同之处在于它们现在明确选择 Ant 项目(相对于 Maven 和 Gradle),而不是默认选择。

基于 Maven 的方法

这是一种类似的方法:两个独立的项目。在这种情况下,它们都是“Maven > Java Application”项目——与 Ant 方法相比,没有区别。

主要区别在于如何在应用程序中包含实用程序 JAR。这取决于您希望如何管理 Maven 工件 - 这有点超出了这个问题的范围。一种方法是遵循这里的指导方针 - 但我认为还有其他方法。