maven-2 – 我如何在一个命令行下载一个特定的Maven工件?

我可以通过安装安装一个工件:install-file,
但是我怎么下载呢,例如:

mvn download:download-file -DgroupId=.. -DartifactId=.. -Dversion=LATEST

任何想法?

你可以使用maven dependency plugin从2.1版本以来有一个不错的dependency:get目标。不需要pom,一切都发生在命令行。

为了确保找到依赖:get goal,你需要明确告诉maven使用版本2.1,即你需要使用插件的完全限定名,包括版本:

mvn org.apache.maven.plugins:maven-dependency-plugin:2.1:get \
    -DrepoUrl=url \
    -Dartifact=groupId:artifactId:version

更新:使用旧版本的Maven(2.1之前),可以运行依赖:通过强制你的maven副本使用给定版本的插件正常(不使用完全限定名称和版本)。

这可以如下进行:

1.在< settings>中添加以下行。您的〜/ .m2 / settings.xml文件的元素:

<usePluginRegistry>true</usePluginRegistry>

2.添加带有以下内容的文件〜/ .m2 / plugin-registry.xml:

<?xml version="1.0" encoding="UTF-8"?>
<pluginRegistry xsi:schemaLocation="http://maven.apache.org/PLUGIN_REGISTRY/1.0.0 http://maven.apache.org/xsd/plugin-registry-1.0.0.xsd"
xmlns="http://maven.apache.org/PLUGIN_REGISTRY/1.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <plugins>
    <plugin>
      <groupId>org.apache.maven.plugins</groupId>
      <artifactId>maven-dependency-plugin</artifactId>
      <useVersion>2.1</useVersion>
      <rejectedVersions/>
    </plugin>
  </plugins>
</pluginRegistry>

但是这似乎不再工作与maven 2.1 / 2.2。实际上,根据Introduction to the Plugin Registry,plugin-registry.xml的功能被重新设计(为了可移植性),并且插件注册表目前在Maven 2中处于半休眠状态。因此,我认为我们必须使用长名称(当使用没有pom的插件,这是依赖关系背后的想法:get)。

http://stackoverflow.com/questions/1895492/how-can-i-download-a-specific-maven-artifact-in-one-command-line

本站文章除注明转载外,均为本站原创或编译
转载请明显位置注明出处:maven-2 – 我如何在一个命令行下载一个特定的Maven工件?