首页 > 解决方案 > Spring MVC 项目中的“缺少工件”和“无法读取工件描述符”错误

问题描述

我在 Spring MVC 项目中收到多个“缺少工件”和“无法读取工件描述符”错误,例如:

我想知道:

我对这些错误的看法:

我已经尝试过的:

这些方法都没有对问题产生任何影响。

另一个重要的事实是,除了所有这些错误之外,Tomcat 成功启动并且项目运行正常。

这是 pom 文件的示例部分。

<?xml version="1.0" encoding="UTF-8"?>
<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>gr.xxxxxx</groupId>
    <artifactId>xxxxxx</artifactId>
    <version>2.2.7</version>
    <packaging>war</packaging>
    <name>xxxxxx</name>
    <description>xxxxxx</description>
    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <spring.version>4.3.23.RELEASE</spring.version>
        <spring.security.version>4.2.12.RELEASE</spring.security.version>
        <hibernate.version>4.1.4.Final</hibernate.version>
        <build.plugins.plugin.version.compiler>3.3</build.plugins.plugin.version.compiler>
        <build.plugins.plugin.version.javadoc>2.10.3</build.plugins.plugin.version.javadoc>
        <junit.version>4.11</junit.version>
        <hamcrest.version>1.3</hamcrest.version>
        <tika.version>1.7</tika.version>
        <mockito.version>1.10.19</mockito.version>
        <doclava.version>1.0.6</doclava.version>
        <adwords.version>4.7.0</adwords.version>
        <hikari.version>3.3.1</hikari.version>
        <mariadb.version>2.4.2</mariadb.version>        
        <thymeleaf.version>3.0.11.RELEASE</thymeleaf.version>
        <stagemonitor.version>0.88.10</stagemonitor.version>
        <javamelody.version>1.79.0</javamelody.version>
        <dynamicreports.version>5.0.0</dynamicreports.version>
        <timestamp>${maven.build.timestamp}</timestamp>
        <maven.build.timestamp.format>dd/MM/yyyy HH:mm</maven.build.timestamp.format>
    </properties>
    <repositories>
        <repository>
            <id>jsqlparser-snapshots</id>
            <snapshots>
                <enabled>true</enabled>
            </snapshots>
            <url>https://oss.sonatype.org/content/groups/public/</url>
        </repository>
        <repository>
            <id>mulesoft-releases</id>
            <name>MuleSoft Releases Repository</name>
            <url>http://repository.mulesoft.org/releases/</url>
            <layout>default</layout>
        </repository>

任何关于如何处理这个问题的想法都值得赞赏。

标签: javaspringmavenspring-mvcpkix

解决方案


我在工作中遇到了同样的问题。我的公司有不同的网络。其中一个非常严格,因此我无法从某些站点下载,即来自 Maven Central。我发现了一篇对我有帮助的帖子:https ://stackoverflow.com/a/22594051/7548672

手动将工件直接下载到您的 .m2 文件夹中是最好的方法。

其他可以尝试的选项:

关闭您的项目并重新打开它。

你在代理后面吗?
您可以 在全局或用户设置中配置代理设置。

尝试这个?窗口 -> 首选项 -> Maven。不要从远程存储库选项自动更新依赖项,然后右键单击项目并选择 Maven-> 更新项目。


推荐阅读