当前位置: 首页 > 知识库问答 >
问题:

如何从maven构建中手动更新maven存储库?

冀萧迟
2023-03-14

我们目前没有自己的存储库。因此,当我们使用maven构建时,它将在当前用户的主目录中创建.m2存储库。

现在有两个第三方JAR在Maven Central中找不到。假设其中之一是hasp-srm-api.jar。今天的过程是这样的:

a.依赖于hasp-srm-api.jar的项目的pom.xml包含以下行:

    <dependency>
      <groupId>com.safenet</groupId>
      <artifactId>hasp</artifactId>
      <version>1</version>
    </dependency>

b.在进行第一次构建之前,我们执行以下命令:

    mvn install:install-file -Dfile=hasp-srm-api.jar -DgroupId=com.safenet -DartifactId=hasp -Dversion=1 -Dpackaging=jar

我的问题是这样的--这一步有没有可能自动化?我希望能够告诉maven检查hasp工件是否存在,如果不存在,则使用前面提到的命令行手动安装它。我该怎么做呢?

共有1个答案

慕容恩
2023-03-14

不,让maven按照您建议的方式自动将工件部署到存储库中是不可能的。这适用于本地和远程存储库。如果工件存在于某个存储库中,您可以将该存储库添加到构建的已知远程Repo列表中,但除此之外,您必须自己添加它。

您可以将其添加到本地的.m2存储库中,但这只适合于特定的环境。其他开发人员将不得不重复这一过程。这是运行自己的存储库服务器(如Nexus)的主要吸引力之一;您可以将工件添加到存储库中,然后组织中的每个人都可以永远使用它。现在还没有办法实现工件的自动部署,但这很容易实现,而且是永久性的。

注意,设置存储库管理器非常容易。强烈推荐。这让整个Maven的事情变得更有意义。

 类似资料:
  • 问题内容: 假设您已经在使用m2eclipse插件,当它没有将依赖关系更新到您的仓库中的最新版本时,您该怎么办? 例如,在命令行上,您只需添加如下标记即可 …强制更新依赖项。Eclipse中是否有类似的东西?(似乎并不总是能够获得最新更新。) 问题答案: 您可以 右键单击 项目,然后 右键单击 Maven >更新项目…,然后选择 强制更新快照/发布 复选框,然后单击确定。

  • 由于“需要HTTPS”错误,我最近在构建项目时遇到了问题。这个问题通过如下所述修改我的pom.xml得到了解决,添加了以下内容: 然而,为我的每个项目更新每个pom.xml是一件麻烦的事。 我尝试将相同的代码片段添加到我的settings.xml,但没有成功。 我知道更新版本的Maven解决了这个问题。然而,由于工作限制,我无法更新我的环境。 我目前已经安装了Java8和Maven,由Netbea

  • 当使用Maven构建我的Spring-boot映像时,我现在在Dockerfile中执行此操作。Maven将下载所有依赖项,然后编译我的文件。这需要相当长的时间。 如何通过docker-compose (Dockerfile)指定构建过程重用我的“windows 10 Home”Maven库?所以,(新)下载的数量是最小的。我的开发环境:我使用Docker quickstart终端,所以使用doc

  • 我有一个多模块java项目。Maven需要大约40秒来构建它。我也尝试过使用多线程构建的maven,方法是指定-T和-C args来表示要使用的线程和内核的数量。但我还没有看到我构建的墙时间有任何显著的改善 我正在使用maven 3.2.3,有时我需要非常频繁地构建我的项目<我知道清洁目标需要很多时间,但我不能忽略它<请给我一些建议。。。。 编辑: 注意:在我的情况下,清洁不需要太多时间。它在1秒

  • 我试图使用maven插件为maven java项目添加一个源文件夹到Eclipse。 从http://mojo.codehaus.org/build-helper-maven-plugin/usage.html上的文档来看,这应该是正确的吧?文件夹target/sources/mygeneratedfiles存在。

  • 我有一个问题,我需要使用Maven版本3.3。3处于脱机模式。 但是当我输入命令:mvn原型:生成 我看到以下错误: [...]在当前项目和插件组[org.apache.maven.plugins,org.codehaus.mojo]中没有找到前缀“原型”的插件,可从[本地(C:\用户\xxx\. m2\存储库),中央(https://repo.maven.apache.org/maven2)]-