如何在 Luna Service (4.4.1) 上使用 Eclipse m2e 将 jar 文件添加到本地 Maven 存储库?

How do I add a jar file to my local Maven repository using Eclipse m2e on Luna Service (4.4.1)?

我收到一条警告消息,因为我手动将一个 jar 文件添加到我的本地 maven 存储库。

[信息]正在下载:http://repo.maven.apache.org/maven2/com/netsuite/nsws-2014/1.0/nsws-2014-1.0.pom

[警告] com.netsuite:nsws-2014:jar:1.0 的 POM 丢失,没有可用的依赖信息

如何在 Luna 服务 (4.4.1) 上使用 Eclipse m2e 将 jar 文件正确添加到本地 Maven 存储库?

我可以使用生成器吗?

您应该将 jar 添加到本地存储库,例如:

mvn install:install-file -DgroupId=... -DartifactId=... -Dversion=... -Dpackaging=jar -Dfile=... -DgeneratePom=true

-DgeneratePom=true 自动生成 POM...

你需要声明<scope>system</scope>喜欢

<dependency>
    <groupId>com.netsuite</groupId>
    <artifactId>nsws-2014</artifactId>
    <version>1</version>
    <scope>system</scope>
    <systemPath>/path/to/your.jar</systemPath>
</dependency>

本地 Maven 存储库实际上是一个标准的 Maven 存储库;因此,它必须遵循特定格式(有一些与 Maven 兼容的存储库格式)。

将文件放入存储库并不能解决问题,除非您能够根据您使用的 Maven 存储库格式模拟创建其他工件。

唯一万无一失的方法是使用 install:install-file 目标,如此处指定:http://maven.apache.org/guides/mini/guide-3rd-party-jars-local.html

要使用 m2e 执行此操作,您需要使用一些小技巧。创建 Maven 启动配置。在 "base directory" 字段中,键入一个始终解析为真实目录的值,例如 ${workspace_loc}。在 "Goals" 字段中,键入 install:install-file,然后在 "parameters" table(使用"Add" 按钮添加参数)。然后运行这个启动配置。