如何使用Maven pom将jar文件仅下载到特定目录?

时间:2011-10-12 15:07:46

标签: java maven

有没有办法将pom.xml文件中的依赖项下载到java中的指定文件夹?我能够从java运行maven命令,我得到了下载消息,但我不知道maven在哪里存储这些库?如何将这些依赖项下载到特定文件夹?

5 个答案:

答案 0 :(得分:105)

看看maven的依赖插件,特别是 copy-dependencies目标。 usage section描述了如何完全按照自己的意愿行事。

要从命令行执行此操作:

$ mvn dependency:copy-dependencies -DoutputDirectory=OUTPUT_DIR

答案 1 :(得分:4)

在pom.xml中添加类似于以下的内容:

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-dependency-plugin</artifactId>
    <configuration>
        <outputDirectory>
            ${project.build.directory}
        </outputDirectory>
    </configuration>
</plugin>

然后运行mvn clean dependency:copy-dependencies以执行复制。 将其与assembly plugin结合使用,您可以将所有内容打包到一个自包含的存档中进行分发。

答案 2 :(得分:3)

  1. 访问此网站:http://jar-download.com/online-maven-download-tool.php

  2. 插入Maven依赖项XML

  3. 以ZIP格式下载jar文件。

答案 3 :(得分:3)

正如here所述,您可以使用maven-dependency-plugin:get

例如,如果要在本地文件夹中下载type SFC<P = {}> = StatelessComponent<P>; interface StatelessComponent<P = {}> { (props: P & { children?: ReactNode }, context?: any): ReactElement<any> | null; propTypes?: ValidationMap<P>; contextTypes?: ValidationMap<any>; defaultProps?: Partial<P>; displayName?: string; } ,请执行以下命令:

org.apache.hive:hive-common:2.1.1

如果要从mvn dependency:get -Ddest=./ -Dartifact=org.apache.hive:hive-common:2.1.1 快照存储库下载最新3.0.0-SNAPSHOT:tar.gz版本的com.orientechnologies:orientdb-community-gremlin,请执行以下操作:

https://oss.sonatype.org/content/repositories/snapshots

答案 4 :(得分:1)

Maven将所有这些存储在本地的Maven2存储库中。默认情况下,它会将它们存储在名为repository的目录下的用户主目录中。

您可以使用名为copy的maven-dependency-plugin目标来获取项目的所有依赖项并将它们放在一个文件夹中。

http://maven.apache.org/plugins/maven-dependency-plugin/copy-mojo.html