java - 如何将实用程序.java 作为文件夹放入库中,以便可以将其方法用于多个 java 项目?
问题描述
我有一个名为的实用程序文件utilities.java
,它位于我的...\NetbeansProjects\Utilities
文件夹中,我想在我从事的任何 java 项目中使用其中的方法。
如果我右键单击Libraries
文件夹,则会有一个选项包括在内JAR/folder...
,所以我选择它并找到并选择Utilities
文件夹和它的绝对路径,如图所示,这会将Utilities
文件夹添加到文件Libraries
夹中,如图所示。
但是我如何引用其中的方法Utilities.java
?
import
没有提供任何帮助,我在每次尝试参考时得到的只是Cannot find symbol
.
我不能Utilities.java
变成一个.jar
文件(我可以吗??),因为选项Compile
是灰色的。
为了成功地将这些方法链接到我的代码,我为每个此类未解析的外部引用添加什么前缀?
无论我尝试只是import
或import static
,我都会收到错误,建议更改为一些不适当的导入。
令人恼火的是,我认为我以前已经成功地做到了这一点......
解决方案
根据您的屏幕截图,您似乎使用的是旧版本的 NetBeans(可能是 v8.2 或类似版本)。我会假设这一点 - 但如果可能的话,值得升级。
通常,我建议创建两个 NetBeans 项目,然后将实用程序项目作为依赖项包含在应用程序项目中。
您可以使用 NetBeans 的“库”功能(如屏幕截图所示),但我认为创建项目更简洁,然后可以由 Git/Mercurial/etc 管理。根据需要,作为单独的项目,无需依赖 NetBeans 特定的库管理功能。
基于蚂蚁的方法
对于基于 Ant 的方法(NetBeans 8 的默认方法),应该是这样的:
上面的创建如下:
创建实用程序项目:
- 文件 > 新建项目 > Java > Java 类库
- 项目名称:MyUtilities
- 创建您的包和 Utilities.java 文件。添加您需要的代码。
- 清理并构建项目。
创建一个项目以使用实用程序 JAR:
- 文件 > 新项目 > Java > Java 应用程序
- 项目名称:MyApplication
- 在项目资源管理器中右键单击 MyApplication 并选择 Properties 弹出窗口。
- 库 > 添加项目 - 找到 MyUtilities 项目并选择它,单击“添加项目 JAR 文件”。
现在您将看到该项目的 jar 文件列为 MyApplication 的库依赖项之一。
清理并构建项目后,您将看到如下文件结构:
注意:对于 NetBeans 12,它是类似的,只是它们现在明确地选择了 Ant 项目(与 Maven、Gradle 相比),而不是默认值。
基于 Maven 的方法
这是一种类似的方法:两个独立的项目。在这种情况下,它们都是“Maven > Java 应用程序”项目——与 Ant 方法相比,没有区别。
主要区别在于您如何在应用程序中包含实用程序 JAR。这取决于你想如何管理你的 Maven 工件——这有点超出了这个问题的范围。一种方法是遵循此处的指南- 但我认为还有其他方法。
推荐阅读
- javascript - 使用 IntersectionObserver 自动移动水平滚动条
- c# - 从字符串开始和结束中删除所有回车符和空格
- javascript - 我想用 React 分别返回 2 个 html 对象,但出现语法错误
- three.js - 如何在three.js 中更好地处理毛发?
- c++ - 即使我认为我写了一个,也没有找到运算符
- python - 创建带有动态命令的按钮,但将每个按钮命令的参数分配给列表的最后一个索引
- android - Android - 使用安全参数传递参数
- javascript - 保持第一个手风琴项打开
- c# - StackOverflowException 在 C# 中处理事件
- react-native - 如何使用 React Navigation 使堆栈导航器覆盖整个屏幕