1

我正在为要访问 GPIO 的 Raspberry Pi 编写 Java 程序。为此,我使用 Pi4J-Library 版本 2 ( https://pi4j.com )。作为 IDE,我使用 Visual Studio Code - 正如他们所建议的那样。

在我的 VSC 工作区中包括:

我可以使用适当的 maven 命令编译和打包最小示例应用程序和我自己的项目。

然后我有一个我自己编写的桌面应用程序的 java 库。我将此库和一个使用该库的项目添加到工作区。我可以从 VSC 运行这个桌面应用程序。最初使用 Eclipse 编写的库和应用程序。Maven 不参与。

现在我正在尝试在我的 Pi4J 项目中使用桌面库中的一个类:new MyLibClass

VSC 显示“MyLibClass 无法解析为类型”。我已经导入了类:import package.name.MyLibClass. 显然 Pi4J 项目不知道在哪里可以找到该类。但是当我按住 CTRL 键单击类名时,它会打开相应的文件。

我想我需要在我的 Pi4J 项目的 pom.xml 中添加一个依赖项。但我完全不知道要为groupId和指定artifactId什么version。桌面库不是 Maven 项目。

非常感谢您提前提供的帮助!

4

1 回答 1

1

Maven 支持三种类型的存储库:本地、中央和远程。通常,您添加到pom.xml文件的依赖项是从中央存储库中提取的。您可以做的是将您的库编译为 jar,然后将其放入本地存储库中,根据您的操作系统,可以在以下位置之一中找到该存储库:

  • Windows:C:\Users\<用户名>\.m2
  • Linux:/home/<用户名>/.m2
  • Mac:/Users/<用户名>/.m2

您可以在本地存储库中安装 jar,如下所示:

mvn install:install-file \
   -Dfile=<path-to-file> \
   -DgroupId=<group-id> \
   -DartifactId=<artifact-id> \
   -Dversion=<version> \
   -Dpackaging=<packaging> \
   -DgeneratePom=true

之后,该 jar 将被复制到您的本地存储库中,其文件夹结构与groupId. 并且由于您提供了一个 custom groupId,您可以使用它们将依赖项添加到您的artifactIdversionpom.xml

或者,您可以将本地存储库添加到您的项目并在那里安装您的 jarpom.xml ,然后像往常一样将依赖项添加到您的项目中。

于 2021-11-17T21:08:08.990 回答