背景: 我正在尝试用 Java 编写一个简单的应用程序(在 Win10 笔记本电脑上运行)来读取 NFC EEPROM (ST M24SR64-Y) 的前 256 个字节。 NFC EEPROM 位于我公司生产的硬件设备中。
该项目进展不太顺利(我可能很快就会发布有关该问题的文章),但我试图找出我在这个简单的应用程序中做错了什么。
问题: 我无法在 NetBeans 7.4 中加载 nfctools 库源代码。在“项目”窗口中,项目名称旁边有一个 [unloadable] 标记。右键单击该项目并选择“解决项目问题”提供以下说明:
Some problems were encountered while processing the POMs:
[ERROR] Unresolveable build extension: Plugin org.apache.maven.wagon:wagon-ssh:2.2 or one of its dependencies could not be resolved: The following artifacts could not be resolved: org.apache.maven.wagon:wagon-ssh:jar:2.2, org.codehaus.plexus:plexus-utils:jar:1.1: The repository system is offline but the artifact org.apache.maven.wagon:wagon-ssh:jar:2.2 is not available in the local repository. @
我寻找了一个名为 wagon 或 wagon-ssh 的 NetBeans 插件,但没有找到。我也找不到任何以 plex 开头的内容。
我真的只是想使用 nfctools 库,但我遇到了错误,并且找不到任何关于原因的信息,所以我尝试查看源代码。
我也希望能够构建 nfctools 库,而不是依赖 nfctools-examples 存储库中已编译的版本。
注意:我确实尝试了 NetBeans 11.3,以防 nfctools 库需要较新版本的 NetBeans,但我遇到了与 7.4 中相同的错误。我使用 NetBeans 7.4 只是因为我的“Teach Yourself Java”一书使用 7.4,而且这样更容易理解示例。
我机器上的 nfctools 和 nfctools-examples 是从 Git 存储库克隆的。
最佳答案
快速修复
当您第一次打开项目时,该项目确实会显示“unloadable”,因为您尚未下载该项目的 Maven 依赖项。
只需在 NetBeans 中按 F11 即可构建项目(或单击锤子图标)。
这将自动下载项目 POM 中定义的所有缺少的依赖项。
详细步骤
如果上述快速修复不起作用 - 以下是从一开始的步骤:
我假设您指的是此处的 NFC 工具:https://github.com/grundid/nfctools
转到网页并单击绿色的“克隆或下载”按钮。
我选择“下载 zip”只是因为我不想克隆。
我使用的是 Windows 10。
(我正在使用 Java 11 - 但我认为这不太重要。)
解压 zip 文件“nfctools-master.zip”(我建议使用免费的 7-Zip 工具来执行此操作)。
我正在使用 Apache NetBeans 11.1:
在 NetBeans 中,转到"file">“新建项目”> 选择“类别:Java with Maven”,以及“项目:Project with Existing POM”。
单击“完成”。
使用 NetBeans 中的“打开项目”对话框,导航到解压缩的文件夹“nfctools-master”。该条目应该具有 Maven“Ma”图标,而不是普通的文件夹图标。
单击“打开项目”。
此时它会显示“可卸载”。
按 F11 构建项目。
当我这样做时,构建结束并在 NetBeans 控制台中输出以下内容:
Reactor Summary for NFC Tools for Java 1.0-SNAPSHOT:
NFC Tools for Java ................................. SUCCESS [ 1.777 s]
nfctools-api ....................................... SUCCESS [ 2.736 s]
nfctools-ndef ...................................... SUCCESS [ 2.691 s]
nfctools-core ...................................... SUCCESS [ 3.968 s]
nfctools-p2p ....................................... SUCCESS [ 2.920 s]
BUILD SUCCESS
另外,查看一下项目附带的 pom.xml 文件的内容。
在新的“NFC Tools for Java”项目中,打开 Project Files 文件夹,然后打开 pom.xml。您将看到对您在问题中提到的项目之一的引用:
wagon-ssh
这一切都由 Maven 处理。
工具示例
我认为这与上面的过程类似(我还没有尝试过这个)。
https://github.com/grundid/nfctools-examples
希望有帮助 - 祝你好运。
如果您有更具体的问题,在此之后,我建议您创建一个新的具体问题 - 但首先检查是否已被提出和回答。
从 Git 克隆打开
在 NetBeans 中,选择"file">“打开项目”。
导航到运行 git clone https://github.com/grundid/nfctools 时创建的“nfctools”目录。
当您选择nfctools
目录时,您将可以选择打开其他所需项目:
- nfctools-api
- nfctools-核心
- nfctools-ndef
- nfctools-p2p
除此之外,您应该看到与使用 zip 文件时相同的最终结果。
关于java - 如何在 NetBeans 中打开 nfctools 库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61280029/