我在 pom.xml 中有以下依赖项:
<properties>
<javax.servlet.version>3.1.0</javax.servlet.version>
</properties>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>${javax.servlet.version}</version>
</dependency>
</dependencies>
当我在项目中运行nvm clean install
时,在我的~/.m2/repository/javax/servlet/servlet-api/3.1.0/
中maven创建servlet-api-3.1.0.jar.lastUpdated
和 servlet-api-3.1.0.pom.lastUpdated
为什么maven创建servlet-api-3.1.0.jar.lastUpdated
而不是servlet-api-3.1.0.jar
?
最佳答案
因为从网络下载servlet-api-3.1.0.jar失败。
可以看到debug,查找导致下载失败的原因。
maven查找jar流程:
1.来自您的本地响应(.m2
目录)
2.如果没有找到,会从那里找到(你的pom.xml设置所在)
<repositories>
<repository>
<snapshots>
<enabled>true</enabled>
</snapshots>
<id>public</id>
<name>Public Repositories</name>
<url>http://yourOwnRepository/nexus/content/repositories/thirdparty/</url>
</repository>
</repositories>
3.如果没有找到,将从你的maven settings.xml配置中查找
4.如果不喜欢,会从默认的maven仓库中查找
关于javax.servlet.lastUpdated 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39138122/