How do I get Eclipse and Maven to download the JARs I need?

大憨熊 提交于 2020-01-03 15:36:00

问题


I'm new to Maven and Eclipse. We have been using Netbeans and installing jars manually in our projects.

I thought the purpose of Maven was to download the required jars based on your dependencies?

In a new project, I added the following under my dependencies node of my pom.xml file:

    <!-- Java dependencies -->
    <dependency>
        <groupId>javax.annotation</groupId>
        <artifactId>com.springsource.javax.annotation</artifactId>
    </dependency>

    <!-- Spring dependencies -->
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>org.springframework.orm</artifactId>
    </dependency>

    <!-- Spring Security dependencies -->
    <dependency>
        <groupId>org.springframework.security</groupId>
        <artifactId>org.springframework.security.config</artifactId>
    </dependency>
    <dependency>
        <groupId>org.springframework.security</groupId>
        <artifactId>org.springframework.security.core</artifactId>
    </dependency>
    <dependency>
        <groupId>org.springframework.security</groupId>
        <artifactId>org.springframework.security.taglibs</artifactId>
    </dependency>
    <dependency>
        <groupId>org.springframework.security</groupId>
        <artifactId>org.springframework.security.web</artifactId>
    </dependency>

    <!-- Other dependencies -->
    <dependency>
        <groupId>com.mysql.jdbc</groupId>
        <artifactId>com.springsource.com.mysql.jdbc</artifactId>
        <scope>runtime</scope>
    </dependency>
    <dependency>
        <groupId>org.apache.commons</groupId>
        <artifactId>com.springsource.org.apache.commons.dbcp</artifactId>
        <scope>runtime</scope>
    </dependency>

But all I get is:

Project build error: 'dependencies.dependency.version' for javax.annotation:com.springsource.javax.annotation:jar is missing.

....

What am I doing wrong?


回答1:


Dependency blocks almost always need a version number. If you search for your dependencies on http://search.maven.org/, you should be able to navigate to a page about the dependency with a complete dependency block.

For example, the page for Spring Security is:

http://search.maven.org/#artifactdetails|org.springframework.security|spring-security-aspects|3.1.0.RELEASE|jar

The dependency block for it looks like:

<dependency>
    <groupId>org.springframework.security</groupId>
    <artifactId>spring-security-aspects</artifactId>
    <version>3.1.0.RELEASE</version>
</dependency>



回答2:


You need to specify the version of your dependencies like so:

<dependency> 
     <groupId>javax.annotation</groupId>       
     <artifactId>com.springsource.javax.annotation</artifactId>  
     <version>1.0.0</version>     
</dependency>



回答3:


as the error says the version attribute of the dependency is missing for the dependency entries in the pom.

notice how pom has been arranged in this example. http://www.mkyong.com/spring-security/spring-security-hello-world-example/

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

can be hard coded or can be added as a property as well. hope this helps




回答4:


As the error message points out, you're missing the <version> child element for all of your <dependency> elements.

If you browse for your dependencies on http://mvnrepository.com, it should be easy to find an example <dependency> element that you can paste into your POM file, like this:

<dependency>
    <groupId>springframework</groupId>
    <artifactId>spring-orm</artifactId>
    <version>1.2.6</version>
</dependency>



回答5:


You need to provide more details for the other than just the groupId and artifactId to add a dependency to the pom.xml file.

Please look at this reference to understand how to add dependencies to the pom.xml file - http://maven.apache.org/pom.html#Dependencies



来源:https://stackoverflow.com/questions/10852191/how-do-i-get-eclipse-and-maven-to-download-the-jars-i-need

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!