【问题标题】:SpringBoot project, I imported the project and run as maven install but the below error gettingSpring Boot 项目,我导入项目并作为 maven install 运行,但出现以下错误
【发布时间】:2021-07-13 15:36:58
【问题描述】:
错误:无法解析项目 com.ctl.project:jar:1.0.0 的依赖项:无法在 com.oracle:ojdbc7:jar:12.1.0.1 收集依赖项
我正在使用最新版本的 sql developer 20.4.1.407.0006,但在该项目中使用了 19.2.1.247.2212 版本。这会是这个错误的问题吗
【问题讨论】:
标签:
sql
spring-boot
spring-boot-maven-plugin
【解决方案1】:
Oracle 过去没有通过公共 Maven 存储库提供其 ojdbc 驱动程序,因此我认为您无法通过这种方式解决它。我相信他们想强迫您在获得许可协议之前接受许可协议。
我自己解决了这个问题,将它们放在我的 Intranet 上基于文件的 Maven 存储库中。这是我的 build.gradle 脚本,它可能比您需要的要复杂一些。
/**********************************************************************/
/* Deploy OJDBC Jar File to Maven server */
/**********************************************************************/
apply plugin: 'maven'
def version = '11.6';
ext {
currentUpload = System.env.TARGET_ARTIFACT
assert currentUpload?.size()
jarFile = new File("lib/${currentUpload}.jar")
jarVersion = currentUpload.replaceAll(/.*-/,'');
groupMappings = ["ojdbc7-1.0": "edu.sunyjcc.oracle",
"ojdbc8-1.0": "edu.sunyjcc.oracle"]
}
println "Current branch is ${currentUpload}."
// Add branch to current version if it isn't production.
project.version = jarVersion
assert groupMappings.containsKey(currentUpload);
project.group = groupMappings[currentUpload];
configurations {
allJars
}
artifacts {
allJars file(jarFile)
}
/**********************************************************************/
/* Deploy to Maven server */
/**********************************************************************/
task verifyJarFile() {
println "***********************************************************"
// println "* currentGitBranch $currentGitBranch";
println "* currentUpload $currentUpload";
println "* jarFile $jarFile";
println "* jarVersion $jarVersion";
println "* group ${groupMappings[currentUpload]}";
println "***********************************************************"
assert jarFile.exists();
}
uploadAllJars {
repositories {
mavenDeployer {
repository(url: "file://x:/source/mvn")
}
}
}
uploadAllJars.dependsOn "verifyJarFile"
task deploy
deploy.dependsOn uploadAllJars
我将所有的jar文件都保存在项目的lib目录下,并设置了TARGET_ARTIFACT环境变量来选择我要构建的那个。
HTH,
编。