如何使用Maven下载Spring 3.2.2 JAR?

时间:2013-11-25 21:02:58

标签: spring maven

我已经安装了Maven并根据他们的指示创建了一个简单的项目。然后我添加了spring-context(根据Spring IO站点)依赖项。什么都没有发生。

{}咆哮 我讨厌春天把Maven推到我的喉咙! Maven在成熟的商店中是可怕的,无法阻止他们对Maven-itze数百件文物做什么。最重要的是,Spring现在以难以理解的方式分离了依赖关系。笨! {/咆哮}

我假设有一些方法可以简单地下载依赖项中的所有JAR。任何人都可以提供以“mvn”开头的pom.xml和命令行吗?

3 个答案:

答案 0 :(得分:1)

如果定义了所有依赖项,那么您只需要运行mvn dependency:copy-dependencies,然后maven({rant}伟大的工具{/ rant})将所有依赖项(包括传递依赖项)放到target/dependencies

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

<project xmlns="http://maven.apache.org/POM/4.0.0" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 
    http://maven.apache.org/maven-v4_0_0.xsd">

    <modelVersion>4.0.0</modelVersion>

    <packaging>jar</packaging>
    <version>1.0-SNAPSHOT</version>

    <groupId>com.test</groupId>
    <artifactId>com.test</artifactId>

    <properties>
        <spring.version>3.2.2.RELEASE</spring.version>
    </properties>

    <dependencies>

        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-core</artifactId>
            <version>${spring.version}</version>
        </dependency>

        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-context</artifactId>
            <version>${spring.version}</version>
        </dependency>

    </dependencies>
</project>

答案 1 :(得分:0)

这是将Spring上下文依赖项添加到项目中的方法。

<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-context</artifactId>
    <version>3.2.2.RELEASE</version>
</dependency>

现在它完全取决于你想要的东西。无论您运行什么mvn命令,依赖项将首先下载到您的Maven本地存储库,而不是您的项目。

在这里你也可以下载jar http://search.maven.org/#browse|-618956366,但这不是推荐的方法。

或者,您可以清除整个Maven本地存储库,然后在mvn packagemvn install之类的命令之后,将再次使用所有依赖项重新填充它。如果它是一个Web应用程序,您的战争将包含在WEB-INF/lib所有依赖项中。如果要创建包含所有依赖项的jar,请参阅How can I create an executable JAR with dependencies using Maven?

答案 2 :(得分:0)

我接受了拉尔夫的回答,但我想记录我完成任务所采取的步骤。只是为了澄清,我对Maven没有问题。 Spring遇到了一个很大的问题,迫使我使用它。

下载Maven,解压缩。请注意,它需要M2_HOME和JAVA_HOME属性,如果您不想使它们永久化,可以在CMD文件中设置这些属性。

运行此命令以使用pom.xml创建默认项目。请注意,执行此操作时,您应该处于空文件夹中。

mvn archetype:generate -DgroupId=com.mycompany.app -DartifactId=my-app -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false

进入刚刚创建的my-app文件夹并编辑pom.xml。请注意,Maven似乎需要JUnit依赖项进行测试。

<project xmlns="http://maven.apache.org/POM/4.0.0"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
    http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.mycompany.app</groupId>
<artifactId>my-app</artifactId>
<packaging>jar</packaging>
<version>1.0-SNAPSHOT</version>
<name>my-app</name>

<dependencies>
    <dependency>
        <groupId>junit</groupId>
        <artifactId>junit</artifactId>
        <version>3.8.1</version>
        <scope>test</scope>
    </dependency>

    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-core</artifactId>
        <version>3.2.2.RELEASE</version>
    </dependency>

    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-context</artifactId>
        <version>3.2.2.RELEASE</version>
    </dependency>
</dependencies>

运行

mvn dependency:copy-dependencies

,您的项目现在应该有一个包含所有JAR的依赖项文件夹。