Java Maven:缺少工件 org.springframework:spring:jar:4.2.6

声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow 原文地址: http://stackoverflow.com/questions/37276011/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me): StackOverFlow

提示:将鼠标放在中文语句上可以显示对应的英文。显示中英文
时间:2020-08-11 19:08:07  来源:igfitidea点击:

Maven: missing artifact org.springframework:spring:jar:4.2.6

javaeclipsespringmavenspring-mvc

提问by jublikon

I have a dynamic web project in SpringToolSuite. It is converted into a Maven project.

我在 SpringToolSuite 中有一个动态 Web 项目。它被转换成一个 Maven 项目。

I am getting the issue:

我得到了这个问题:

Mising artifact org.springframework:spring.jar:4.2.6

缺少工件 org.springframework:spring.jar:4.2.6

I already tried to clean, rebuild and run the project. It gives:

我已经尝试清理、重建和运行该项目。它给:

Error reading file C:\Users\jublikon.m2\repository\org\springframework\spring\4.2.6\spring-4.2.6.jar C:\Users\jublikon.m2\repository\org\springframework\spring\4.2.6\spring-4.2.6.jar (The system cannot find the specified file)

读取文件 C:\Users\jublikon.m2\repository\org\springframework\spring\4.2.6\spring-4.2.6.jar C:\Users\jublikon.m2\repository\org\springframework\spring\4.2 时出错。 6\spring-4.2.6.jar(系统找不到指定文件)

I do not understand why it is asking for jar files while I am using Maven?

我不明白为什么它在我使用 Maven 时要求提供 jar 文件?

pom.xml

pom.xml

    <?xml version="1.0"?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <modelVersion>4.0.0</modelVersion>
  <groupId>HelloWeb</groupId>
  <artifactId>HelloWeb</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  <packaging>war</packaging>
  <dependencies>
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-context</artifactId>
      <scope>compile</scope>
    </dependency>
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-core</artifactId>
      <scope>compile</scope>
    </dependency>
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-web</artifactId>
      <scope>compile</scope>
    </dependency>
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-webmvc</artifactId>
      <scope>compile</scope>
    </dependency>
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-aspects</artifactId>
      <scope>compile</scope>
    </dependency>
  </dependencies>
  <repositories>
    <repository>
      <snapshots>
        <enabled>false</enabled>
      </snapshots>
      <id>central</id>
      <name>Central Repository</name>
      <url>https://repo.maven.apache.org/maven2</url>
    </repository>
  </repositories>
  <pluginRepositories>
    <pluginRepository>
      <releases>
        <updatePolicy>never</updatePolicy>
      </releases>
      <snapshots>
        <enabled>false</enabled>
      </snapshots>
      <id>central</id>
      <name>Central Repository</name>
      <url>https://repo.maven.apache.org/maven2</url>
    </pluginRepository>
  </pluginRepositories>
  <build>
    <sourceDirectory>C:\Users\name\Development\Spring\Projects\HelloWeb\src\main\java</sourceDirectory>
    <scriptSourceDirectory>C:\Users\name\Development\Spring\Projects\HelloWeb\src\main\scripts</scriptSourceDirectory>
    <testSourceDirectory>C:\Users\name\Development\Spring\Projects\HelloWeb\src\test\java</testSourceDirectory>
    <outputDirectory>C:\Users\name\Development\Spring\Projects\HelloWeb\target\classes</outputDirectory>
    <testOutputDirectory>C:\Users\jublikon\Development\Spring\Projects\HelloWeb\target\test-classes</testOutputDirectory>
    <resources>
      <resource>
        <directory>C:\Users\jublikon\Development\Spring\Projects\HelloWeb\src\main\resources</directory>
      </resource>
    </resources>
    <testResources>
      <testResource>
        <directory>C:\Users\jublikon\Development\Spring\Projects\HelloWeb\src\test\resources</directory>
      </testResource>
    </testResources>
    <directory>C:\Users\jublikon\Development\Spring\Projects\HelloWeb\target</directory>
    <finalName>HelloWeb-0.0.1-SNAPSHOT</finalName>
    <pluginManagement>
      <plugins>
        <plugin>
          <artifactId>maven-antrun-plugin</artifactId>
          <version>1.3</version>
        </plugin>
        <plugin>
          <artifactId>maven-assembly-plugin</artifactId>
          <version>2.2-beta-5</version>
        </plugin>
        <plugin>
          <artifactId>maven-dependency-plugin</artifactId>
          <version>2.8</version>
        </plugin>
        <plugin>
          <artifactId>maven-release-plugin</artifactId>
          <version>2.3.2</version>
        </plugin>
      </plugins>
    </pluginManagement>
    <plugins>
      <plugin>
        <artifactId>maven-compiler-plugin</artifactId>
        <version>3.3</version>
        <executions>
          <execution>
            <id>default-compile</id>
            <phase>compile</phase>
            <goals>
              <goal>compile</goal>
            </goals>
            <configuration>
              <source>1.8</source>
              <target>1.8</target>
            </configuration>
          </execution>
          <execution>
            <id>default-testCompile</id>
            <phase>test-compile</phase>
            <goals>
              <goal>testCompile</goal>
            </goals>
            <configuration>
              <source>1.8</source>
              <target>1.8</target>
            </configuration>
          </execution>
        </executions>
        <configuration>
          <source>1.8</source>
          <target>1.8</target>
        </configuration>
      </plugin>
      <plugin>
        <artifactId>maven-war-plugin</artifactId>
        <version>2.6</version>
        <executions>
          <execution>
            <id>default-war</id>
            <phase>package</phase>
            <goals>
              <goal>war</goal>
            </goals>
            <configuration>
              <warSourceDirectory>WebContent</warSourceDirectory>
              <failOnMissingWebXml>false</failOnMissingWebXml>
            </configuration>
          </execution>
        </executions>
        <configuration>
          <warSourceDirectory>WebContent</warSourceDirectory>
          <failOnMissingWebXml>false</failOnMissingWebXml>
        </configuration>
      </plugin>
      <plugin>
        <artifactId>maven-clean-plugin</artifactId>
        <version>2.5</version>
        <executions>
          <execution>
            <id>default-clean</id>
            <phase>clean</phase>
            <goals>
              <goal>clean</goal>
            </goals>
          </execution>
        </executions>
      </plugin>
      <plugin>
        <artifactId>maven-resources-plugin</artifactId>
        <version>2.6</version>
        <executions>
          <execution>
            <id>default-testResources</id>
            <phase>process-test-resources</phase>
            <goals>
              <goal>testResources</goal>
            </goals>
          </execution>
          <execution>
            <id>default-resources</id>
            <phase>process-resources</phase>
            <goals>
              <goal>resources</goal>
            </goals>
          </execution>
        </executions>
      </plugin>
      <plugin>
        <artifactId>maven-surefire-plugin</artifactId>
        <version>2.12.4</version>
        <executions>
          <execution>
            <id>default-test</id>
            <phase>test</phase>
            <goals>
              <goal>test</goal>
            </goals>
          </execution>
        </executions>
      </plugin>
      <plugin>
        <artifactId>maven-install-plugin</artifactId>
        <version>2.4</version>
        <executions>
          <execution>
            <id>default-install</id>
            <phase>install</phase>
            <goals>
              <goal>install</goal>
            </goals>
          </execution>
        </executions>
      </plugin>
      <plugin>
        <artifactId>maven-deploy-plugin</artifactId>
        <version>2.7</version>
        <executions>
          <execution>
            <id>default-deploy</id>
            <phase>deploy</phase>
            <goals>
              <goal>deploy</goal>
            </goals>
          </execution>
        </executions>
      </plugin>
      <plugin>
        <artifactId>maven-site-plugin</artifactId>
        <version>3.3</version>
        <executions>
          <execution>
            <id>default-site</id>
            <phase>site</phase>
            <goals>
              <goal>site</goal>
            </goals>
            <configuration>
              <outputDirectory>C:\Users\jublikon\Development\Spring\Projects\HelloWeb\target\site</outputDirectory>
              <reportPlugins>
                <reportPlugin>
                  <groupId>org.apache.maven.plugins</groupId>
                  <artifactId>maven-project-info-reports-plugin</artifactId>
                </reportPlugin>
              </reportPlugins>
            </configuration>
          </execution>
          <execution>
            <id>default-deploy</id>
            <phase>site-deploy</phase>
            <goals>
              <goal>deploy</goal>
            </goals>
            <configuration>
              <outputDirectory>C:\Users\jublikon\Development\Spring\Projects\HelloWeb\target\site</outputDirectory>
              <reportPlugins>
                <reportPlugin>
                  <groupId>org.apache.maven.plugins</groupId>
                  <artifactId>maven-project-info-reports-plugin</artifactId>
                </reportPlugin>
              </reportPlugins>
            </configuration>
          </execution>
        </executions>
        <configuration>
          <outputDirectory>C:\Users\jublikon\Development\Spring\Projects\HelloWeb\target\site</outputDirectory>
          <reportPlugins>
            <reportPlugin>
              <groupId>org.apache.maven.plugins</groupId>
              <artifactId>maven-project-info-reports-plugin</artifactId>
            </reportPlugin>
          </reportPlugins>
        </configuration>
      </plugin>
    </plugins>
  </build>
  <reporting>
    <outputDirectory>C:\Users\jublikon\Development\Spring\Projects\HelloWeb\target\site</outputDirectory>
  </reporting>
</project>

I have already seen this postbut somehow I am not able to solve my problem.

我已经看过这篇文章,但不知何故我无法解决我的问题。

enter image description here

在此处输入图片说明

When I execute

当我执行

mvn clean install

mvn 全新安装

in the root directory of the project I get:

在项目的根目录中,我得到:

>mvn clean install
[INFO] Scanning for projects...
Downloading: https://repo.maven.apache.org/maven2/org/springframework/spring-framework-bom/$%7Bspring.version%7D/spring-framework-bom-$%7Bspring.version%7D.pom
[ERROR] [ERROR] Some problems were encountered while processing the POMs:
[ERROR] Non-resolvable import POM: Could not find artifact org.springframework:spring-framework-bom:pom:${spring.version} in central (https://repo.maven.apache.org/maven2) @ line 29, column 21
[ERROR] 'dependencies.dependency.version' for org.springframework:spring-context:jar is missing. @ line 40, column 17
[ERROR] 'dependencies.dependency.version' for org.springframework:spring-core:jar is missing. @ line 44, column 17
[ERROR] 'dependencies.dependency.version' for org.springframework:spring-web:jar is missing. @ line 48, column 17
[ERROR] 'dependencies.dependency.version' for org.springframework:spring-webmvc:jar is missing. @ line 52, column 17
[ERROR] 'dependencies.dependency.version' for org.springframework:spring-aspects:jar is missing. @ line 56, column 17
 @
[ERROR] The build could not read 1 project -> [Help 1]
[ERROR]
[ERROR]   The project HelloWeb:HelloWeb:0.0.1-SNAPSHOT (C:\Users\jublikon\Development\Spring\Projects\HelloWeb\pom.xml) has 6 errors
[ERROR]     Non-resolvable import POM: Could not find artifact org.springframework:spring-framework-bom:pom:${spring.version} in central (https://repo.maven.apache.org/maven2) @ line 29, column 21 -> [Help 2]
[ERROR]     'dependencies.dependency.version' for org.springframework:spring-context:jar is missing. @ line 40, column 17
[ERROR]     'dependencies.dependency.version' for org.springframework:spring-core:jar is missing. @ line 44, column 17
[ERROR]     'dependencies.dependency.version' for org.springframework:spring-web:jar is missing. @ line 48, column 17
[ERROR]     'dependencies.dependency.version' for org.springframework:spring-webmvc:jar is missing. @ line 52, column 17
[ERROR]     'dependencies.dependency.version' for org.springframework:spring-aspects:jar is missing. @ line 56, column 17
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/ProjectBuildingException
[ERROR] [Help 2] http://cwiki.apache.org/confluence/display/MAVEN/UnresolvableModelException

I have also checked my proxy settings. The active provider in eclipse is set to 'native' and I am not connected through a proxy

我还检查了我的代理设置。eclipse 中的活动提供程序设置为“本机”,我没有通过代理连接

In the directory

在目录中

~/.m2/settings.xml

~/.m2/settings.xml

main is org.apache.maven.cli.MavenCli from plexus.core

set maven.home default ${user.home}/m2

[plexus.core]
optionally ${maven.home}/lib/ext/*.jar
load       ${maven.home}/lib/*.jar
load       ${maven.home}/conf/logging

采纳答案by JimHawkins

I'm quite sure there is no artifact called "spring"

我很确定没有名为“弹簧”的神器

<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring</artifactId>           <!-- *** spring doesn't *** exist  -->
    <version>4.2.6</version>
</dependency>

Depending on the Spring components you need, you should basically include these dependencies:

根据您需要的 Spring 组件,您应该基本上包括这些依赖项:

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

In my Spring project, I include the Spring artifacts via a BOM (Bill of Materials):

在我的 Spring 项目中,我通过 BOM(物料清单)包含 Spring 工件:

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

<dependencyManagement>
    <dependencies>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-framework-bom</artifactId>
            <version>${spring.version}</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>
    </dependencies>
</dependencyManagement>

<dependencies>
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-context</artifactId>
    </dependency>
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-core</artifactId>
    </dependency>
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-web</artifactId>
    </dependency>
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-webmvc</artifactId>
    </dependency>
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-aspects</artifactId>
    </dependency>
<!-- more -->
</dependencies>

回答by Nadir

Maven by default downloads the required dependencies to your local repository so they can be accesses faster next time. Maybe the dependency is either corrupted, or removed from your local disk? Did you check that C:\Users\jublikon.m2\repository\org\springframework\spring\4.2.6\spring-4.2.6.jar actually exists and is a valid spring jar file?

默认情况下,Maven 会将所需的依赖项下载到您的本地存储库,以便下次可以更快地访问它们。也许依赖关系已损坏,或从本地磁盘中删除?您是否检查过 C:\Users\jublikon.m2\repository\org\springframework\spring\4.2.6\spring-4.2.6.jar 是否确实存在并且是一个有效的 spring jar 文件?

回答by Utkarsh Singh

What worked for me was I downloaded the jar files from mvnrepository I added them from build path and then I did clean compile install in Maven build and then validate the project and then update the project and the errors are gone.

对我有用的是我从 mvnrepository 下载了 jar 文件,我从构建路径添加了它们,然后我在 Maven 构建中进行了干净的编译安装,然后验证项目,然后更新项目,错误消失了。

回答by Akshay Chopra

For spring framework, I was using the following dependency in my pom.xml file

对于 spring 框架,我在 pom.xml 文件中使用了以下依赖项

<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-test</artifactId>
    <version>4.3.2RELEASE</version>
    <scope>test</scope>
</dependency>

But it was giving me the error

但它给了我错误

Missing artifact org.springframework.boot:spring-boot-starter-test:jar:4.3.2.RELEASE

缺少工件 org.springframework.boot:spring-boot-starter-test:jar:4.3.2.RELEASE

But when I changed the version to the latest one, the error was removed.

但是当我将版本更改为最新版本时,错误已消除。

<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-test</artifactId>
    <version>5.2.1.RELEASE</version>
    <scope>test</scope>
</dependency>

So try using the latest version.

所以尝试使用最新版本。