Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/variables/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Maven不在Eclipse中下载依赖项_Java_Eclipse_Maven - Fatal编程技术网

Java Maven不在Eclipse中下载依赖项

Java Maven不在Eclipse中下载依赖项,java,eclipse,maven,Java,Eclipse,Maven,我正在eclipse中设置一个项目。此项目通过命令行成功构建(所有mvn命令,如mvn-package,mvn-compile,mvn-clean-install)都运行良好。在STS或Eclipse上设置此项目时。我看到一些依赖项没有被下载,即使它们出现在pom.xml中。但是,在maven存储库中搜索它们,并将jar下载到本地计算机,然后将它们添加到构建路径中,这样就可以在Eclipse上工作 我们需要对eclipse做些什么来确保它从存储库下载所有依赖项 我的POM: <depend

我正在eclipse中设置一个项目。此项目通过命令行成功构建(所有
mvn
命令,如
mvn-package
mvn-compile
mvn-clean-install
)都运行良好。在STS或Eclipse上设置此项目时。我看到一些依赖项没有被下载,即使它们出现在
pom.xml
中。但是,在maven存储库中搜索它们,并将jar下载到本地计算机,然后将它们添加到构建路径中,这样就可以在Eclipse上工作

我们需要对eclipse做些什么来确保它从存储库下载所有依赖项

我的POM

<dependency>
    <groupId>org.apache.bookkeeper</groupId>
    <artifactId>bookkeeper-server-compat410</artifactId>
    <version>4.1.0</version>
    <scope>test</scope>
    <exclusions>
        <exclusion>
            <groupId>org.apache.bookkeeper</groupId>
            <artifactId>bookkeeper-server</artifactId>
        </exclusion>
    </exclusions>
</dependency>
<dependency>
    <groupId>org.apache.bookkeeper</groupId>
    <artifactId>bookkeeper-server-compat420</artifactId>
    <version>4.2.0</version>
    <scope>test</scope>
    <exclusions>
        <exclusion>
            <groupId>org.apache.bookkeeper</groupId>
            <artifactId>bookkeeper-server</artifactId>
        </exclusion>
    </exclusions>
</dependency>

簿记员
并且不在MavenDependencies文件夹中,因此在Eclipse中出现错误

但是,手动将它们添加到构建路径会创建一个新文件夹(参考库)并解决Eclipse错误。为什么Eclipse不自己从maven存储库下载并导入这些依赖项??这是Eclipse中的错误还是我这边的问题。请帮忙

解决方案1:

设置正确的代理:


可选择的
假的
http
172.27.171.91
8080
解决方案2:

删除

lastupdated extension files from folder
并尝试更新maven


[大多数情况下,此解决方案都有效]

我遇到了同样的问题,我就是这样解决的:

  • 右键单击项目,选择运行方式->Maven安装。 观察输出控制台以查看安装进度。之后 安装完成后,您可以继续下一步
  • 右键单击SpringMVC项目,选择Maven->Update项目
  • 选择您的项目并单击“确定”。等待更新过程结束 完成了
  • 错误仍然存在,然后执行Project->Clean,然后确保您选择了我们的项目目录,然后执行follow Project->Build

  • 在我的例子中,我没有选中“自动生成”
    。再次检查它开始下载JAR。

    我也面临类似的问题。我尝试删除.m2中的文件夹,然后再次构建maven项目。
    我可以下载所有依赖项,除了我们自己创建并发布在Nexus上的一个依赖项

    然后我用java从JRE指向JDK,解决了我的问题

    以下几点对我很有用。

    只需右键单击
    Project->Maven->updateproject…
    ,如图所示。

    有时下载依赖项时出错-例如,下载了一些文件,但本地Maven存储库中缺少实际的JAR

    在这种情况下,我必须删除本地maven存储库中有问题的依赖项的整个文件夹。只有在那时Maven更新才起作用(右键单击项目并选择
    project>Maven>updateproject…

    我曾经遇到过类似的问题,下面的步骤帮助我解决了这个问题

  • 从相应的文件夹中删除上次修改的jar
  • 选择项目

    • 右键单击->Maven

    • 更新项目


  • 它将下载所有丢失的罐子。

    我最近遇到了同样的问题

    首先,您必须在maven存储库的settings.xml中配置代理设置

    如果您使用的是eclipse/STS,那么请验证以下内容

    Window -> Preferences -> Maven -> User Settings -> update user settings by pointing your settings.xml
    

    现在,它将更新maven项目。这对我有用

    对我来说,我将包装从pom更改为jar,然后下载了依赖项

    so I changed from <packaging>pom</packaging> to <packaging>jar</packaging>
    
    所以我从pom改为jar
    
  • 尝试将依赖项从“类型”标记移动到“范围”标记,如下所示
  • 
    net.xyz.xyz
    通分得到
    整数解
    聚甲醛
    

    
    net.xyz.xyz
    通分得到
    整数解
    试验
    

    然后进一步Maven>更新项目

    确保您定义的依赖关系尽可能靠近项目树的叶子(需要它的地方)否则,Maven可能会忽略它。

    例如,如果您有一个引用项目a和B的父项目,并且依赖关系与项目a有关,那么Maven可能会忽略在父项目的pom.xml中定义依赖关系。因此,在项目A的pom.xml中定义它

    Parent Project's pom.xml
       Sub-project A's pom.xml <<< define the dependency where it is needed
       Sub-project B's pom.xml
    
    父项目的pom.xml
    
    子项目A的pom.xml是否下载了其他依赖项?如果是,请尝试我的回答中的第二个解决方案确保您已经保存了pom.xml,并运行“mvn install”,这并不总是保证的,您可能不会得到很少的依赖项。我们需要从文件夹中删除lastmodified文件并重试多次我在命令行mvn install-U中解决了此类问题,然后您可以尝试从eclipse执行mvn项目更新我对jee、eclipse、maven和所有东西都是新手。请选择添加代理的位置和位置。lastupdated文件代理通常出现在setting.xml文件中,最后更新发生在repo路径中。在本地计算机中存在相对路径时出现错误的依赖项,如果导航到该位置,则可以查找上次更新的文件@加利洛加利洛
    <dependency>
                <groupId>net.xyz.xyz</groupId>
                <artifactId>xyz-xyz</artifactId>
                <version>x.y.z</version>
                <scope>test</scope> 
         </dependency>
    
    Parent Project's pom.xml
       Sub-project A's pom.xml <<< define the dependency where it is needed
       Sub-project B's pom.xml