我尝试使用带有build.gradle的Spring版本3运行一个遗留项目:
...
plugins {
id 'java'
id 'maven-publish'
id 'war'
}
repositories {
mavenLocal()
maven {
url = uri('https://repo.maven.apache.org/maven2/')
}
}
ext {
org_springframework_version = '3.2.18.RELEASE'
}
dependencies {
...
implementation 'org.springframework.ldap:spring-ldap-core:2.4.1'
implementation "org.springframework:spring-web:${org_springframework_version}"
implementation "org.springframework:spring-webmvc:${org_springframework_version}"
implementation "org.springframework:spring:${org_springframework_version}"
...
}
...
但在尝试建置时发生下列错误:
Execution failed for task ':compileJava'.
> Could not resolve all files for configuration ':compileClasspath'.
> Could not find org.springframework:spring:3.2.18.RELEASE.
Searched in the following locations:
- file:/C:/Users/.../.m2/repository/org/springframework/spring/3.2.18.RELEASE/spring-3.2.18.RELEASE.pom
- https://repo.maven.apache.org/maven2/org/springframework/spring/3.2.18.RELEASE/spring-3.2.18.RELEASE.pom
Required by:
project :
Possible solution:
- Declare repository providing the artifact, see the documentation at https://docs.gradle.org/current/userguide/declaring_repositories.html
我检查了https://repo.maven.apache.org/maven2/org/springframework/spring/,它看起来像是在回购中没有Spring3或4。
我不能使用任何较新的Spring版本,因为项目中有大量的其他依赖项和遗留代码,应该保持原样。
我很困惑为什么会是这样,或者现在如何建立我的项目。任何帮助都很感激。
1条答案
按热度按时间jqjz2hbq1#
从Spring Framework 3.0.0开始,完整的
spring.jar
就没有了,Spring 2.5.6是最后一个拥有完整Spring jar的版本,从那以后,只有较小的模块可用。你看到的5.x版本只是一些顶级的
pom.xml
文件,我认为它们是意外发布的(至于6.x,它们已经不存在了)。简言之,从依赖项中删除以下行
因此,它不再尝试解决自Spring 2.5.6以来就没有的问题。
作为附加注解,将
与
这将允许Gradle为您的环境选择更适合的Maven镜像。