Gradle 构建不使用本地项目中的 jar 文件

问题描述 投票:0回答:1

我目前正在合作开发一个由其他人开发的代码库,其中包括多个子项目,每个子项目都有自己的一组 JAR 文件。我的目标是在 Spring 应用程序中利用这些预构建的 JAR 文件进行测试。我正在使用的代码库托管在 GitHub 上:https://github.com/spring-cloud/spring-cloud-netflix,我没有对其进行任何更改。在我单独的 Spring 项目中,我的目标是利用这些 JAR 进行测试。在我的 gradle.build 中,我在 spring-cloud-starter-netflix-eureka-server 中测试了通往 JAR 的一条路径,但这不起作用。

我尝试构建应用程序时遇到的错误。我还检查了依赖项,它们也没有显示。

error: cannot find symbol @EnableEurekaServer

这是我本地 spring 应用程序的 build.gradle 文件

plugins {
    id 'java'
    id 'org.springframework.boot' version '3.2.4'
    id 'io.spring.dependency-management' version '1.1.4'
}

group = 'com.spring-cloud-netflix'
version = '0.0.1-SNAPSHOT'

java {
    sourceCompatibility = '17'
}

repositories {
    mavenCentral()
}

dependencies {
    implementation 'org.springframework.boot:spring-boot-starter-web'
    implementation fileTree(dir: '../../../spring-cloud-netflix/spring-cloud-starter-netflix-eureka-server/target/', include:  '*.jar')
    testImplementation 'org.springframework.boot:spring-boot-starter-test'
}

tasks.named('test') {
    useJUnitPlatform()
}

我尝试更改实现来进行编译,但随后我从 gradle.build 收到错误“编译不存在于...”

java spring gradle java-17 spring-cloud-netflix
1个回答
0
投票

这缺少一个存储库配置,该配置告诉它在哪里查找它。

repositories {
    mavenCentral()
    flatDir {
        dirs 'lib'
    }
}
© www.soinside.com 2019 - 2024. All rights reserved.