用Kotlin构建Gradle [英] Gradle build with Kotlin

查看:111
本文介绍了用Kotlin构建Gradle的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我是gradle的新手,正在尝试构建gradle多模块项目.

I am new to gradle and trying to build a gradle multi module project.

setting.gradle

setting.gradle

    include 'front50-web',
        'front50-core',
        'front50-gcs',
        'front50-redis',
        'front50-s3',
        'front50-sql',
        'front50-sql-mysql',
        'front50-sql-postgres',
        'front50-test',
        'front50-migrations',
        'front50-azure',
        'front50-swift',
    //    'front50-oracle',
        'front50-bom',
        'front50-mcqueen'

def setBuildFile(project) {
  project.buildFileName = "${project.name}.gradle"
  project.children.each {
    setBuildFile(it)
  }
}

rootProject.children.each {
  setBuildFile(it)
}

// Set as an ext variable so that build scripts can access it
gradle.ext.includedProviderProjects = includeProviders.split(',').collect{ ':front50-' + it.toLowerCase() }

主要build.gradle,

Main build.gradle,

buildscript {
  repositories {
    jcenter()
    mavenCentral()
    maven { url "https://spinnaker.bintray.com/gradle" }
    maven { url "https://plugins.gradle.org/m2/" }
    maven { url "https://mvnrepository.com/artifact" }
  }
  dependencies {
    classpath "com.netflix.spinnaker.gradle:spinnaker-dev-plugin:$spinnakerGradleVersion"
    classpath "com.netflix.nebula:nebula-kotlin-plugin:1.3.10"
    if (Boolean.valueOf(enablePublishing)) {
      classpath "com.netflix.spinnaker.gradle:spinnaker-gradle-project:$spinnakerGradleVersion"
      // TODO: nebula-publishing-plugin version override should be removed as soon as spinnaker-gradle-project is updated
      // this override is needed to omit compileOnly dependencies from generated pom.xml
      classpath "com.netflix.nebula:nebula-publishing-plugin:12.0.1"
    }
  }
}

allprojects { project ->
  group = "com.netflix.spinnaker.front50"
  apply plugin: 'spinnaker.base-project'
  if (Boolean.valueOf(enablePublishing)) {
    apply plugin: "spinnaker.project"
  }


  if ([korkVersion, fiatVersion].find { it.endsWith("-SNAPSHOT") }) {
    repositories {
      mavenLocal()
    }
  }

  if (name != "front50-bom") {
    apply plugin: 'java-library'
    apply plugin: 'groovy'

    test {
      testLogging {
        exceptionFormat = 'full'
      }
    }

    tasks.withType(JavaExec) {
      if (System.getProperty('DEBUG', 'false') == 'true') {
        jvmArgs '-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=8180'
      }
    }

    dependencies {
      implementation(platform("com.netflix.spinnaker.kork:kork-bom:$korkVersion"))
      annotationProcessor(platform("com.netflix.spinnaker.kork:kork-bom:$korkVersion"))
      annotationProcessor("org.springframework.boot:spring-boot-configuration-processor")
      testAnnotationProcessor(platform("com.netflix.spinnaker.kork:kork-bom:$korkVersion"))

      implementation("org.codehaus.groovy:groovy-all")
      implementation("net.logstash.logback:logstash-logback-encoder")
      implementation "com.netflix.spinnaker.kork:kork-logging:$korkVersion"

      compileOnly("org.projectlombok:lombok")
      annotationProcessor("org.projectlombok:lombok")
      testAnnotationProcessor("org.projectlombok:lombok")

      testImplementation("org.spockframework:spock-core")
      testImplementation("org.springframework.boot:spring-boot-starter-test")
      testImplementation("org.spockframework:spock-spring")
      testImplementation("org.springframework:spring-test")
      testImplementation("org.hamcrest:hamcrest-core")
      testRuntimeOnly("cglib:cglib-nodep")
      testRuntimeOnly("org.objenesis:objenesis")
    }
  }
}

defaultTasks ':front50-web:run'

apply plugin: 'spinnaker-rio'

spinnakerRio {
  releaseTrainOverrides = [
    'com.netflix.spinnaker.clouddriver': 'master-iss.31',
    'com.netflix.spinnaker.fiat': 'master-iss.20',
    'com.netflix.spinnaker.kork': 'master-iss.35',
  ]
}

kotlin.gradle

kotlin.gradle

apply plugin: "nebula.kotlin"
apply plugin: "kotlin-spring"

configurations.all {
  resolutionStrategy {
    eachDependency { details ->
      if (details.requested.group == "org.jetbrains.kotlin") {
        details.useVersion "1.3.10"
      }
    }
  }
}

compileKotlin {
  kotlinOptions {
    languageVersion = "1.3"
    jvmTarget = "1.8"
  }
}

我在上面的gradle文件中有一个任务compileKotlin.

I have a task, compileKotlin in the gradle file above.

front50-gradle.sql,

front50-gradle.sql,

apply from: "$rootDir/gradle/kotlin.gradle"

dependencies {
  implementation project(":front50-core")
  if (!rootProject.hasProperty("excludeSqlDrivers")) {
    runtimeOnly project(":front50-sql-mysql")
    runtimeOnly project(":front50-sql-postgres")
  }

  implementation "com.netflix.spinnaker.kork:kork-sql"
  implementation "com.netflix.spinnaker.kork:kork-exceptions"
  implementation "com.netflix.spinnaker.kork:kork-web"

  implementation "io.strikt:strikt-core"
  implementation "com.netflix.hystrix:hystrix-core"
  implementation "io.github.resilience4j:resilience4j-retry"

  implementation "org.jetbrains.kotlinx:kotlinx-coroutines-core"

  testImplementation "io.mockk:mockk"
  testImplementation "dev.minutest:minutest"
  testImplementation "org.junit.jupiter:junit-jupiter-api"

  testImplementation "mysql:mysql-connector-java"
  testImplementation "org.testcontainers:mysql"

  testImplementation "org.testcontainers:postgresql"
  testImplementation "org.postgresql:postgresql"

  // Only used for Initializing Datasource. For actual CRUD, test containers preferred.
  testImplementation "com.h2database:h2"
}

test {
  useJUnitPlatform {
    includeEngines "junit-vintage", "junit-jupiter"
  }
}

项目结构,

在运行./gradlew build --stacktrace

Getting the error below on running ./gradlew build --stacktrace

Could not resolve compiler classpath. Check if Kotlin Gradle plugin repository is configured in project ':front50-sql'.

FAILURE: Build failed with an exception.

* What went wrong:
Could not determine the dependencies of task ':front50-sql:compileKotlin'.
> Could not resolve all files for configuration ':front50-sql:kotlinCompilerClasspath'.
   > Cannot resolve external dependency org.jetbrains.kotlin:kotlin-compiler-embeddable:1.3.10 because no repositories are defined.
     Required by:
         project :front50-sql

* Try:
Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Exception is:
org.gradle.api.internal.tasks.TaskDependencyResolveException: Could not determine the dependencies of task ':front50-sql:compileKotlin'.
        at org.gradle.api.internal.tasks.CachingTaskDependencyResolveContext.getDependencies(CachingTaskDependencyResolveContext.java:68)
        at org.gradle.execution.plan.TaskDependencyResolver.resolveDependenciesFor(TaskDependencyResolver.java:46)
        at org.gradle.execution.plan.LocalTaskNode.getDependencies(LocalTaskNode.java:106)
        at org.gradle.execution.plan.LocalTaskNode.resolveDependencies(LocalTaskNode.java:79)
        at org.gradle.execution.plan.DefaultExecutionPlan.addEntryTasks(DefaultExecutionPlan.java:175)
        at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph.addEntryTasks(DefaultTaskExecutionGraph.java:139)
        at org.gradle.execution.TaskNameResolvingBuildConfigurationAction.configure(TaskNameResolvingBuildConfigurationAction.java:48)
        at org.gradle.execution.DefaultBuildConfigurationActionExecuter.configure(DefaultBuildConfigurationActionExecuter.java:57)
        at org.gradle.execution.DefaultBuildConfigurationActionExecuter.access$200(DefaultBuildConfigurationActionExecuter.java:26)
        at org.gradle.execution.DefaultBuildConfigurationActionExecuter$2.proceed(DefaultBuildConfigurationActionExecuter.java:63)
        at org.gradle.execution.DefaultTasksBuildExecutionAction.configure(DefaultTasksBuildExecutionAction.java:44)
        at org.gradle.execution.DefaultBuildConfigurationActionExecuter.configure(DefaultBuildConfigurationActionExecuter.java:57)
        at org.gradle.execution.DefaultBuildConfigurationActionExecuter.access$200(DefaultBuildConfigurationActionExecuter.java:26)
        at org.gradle.execution.DefaultBuildConfigurationActionExecuter$2.proceed(DefaultBuildConfigurationActionExecuter.java:63)
        at org.gradle.execution.ExcludedTaskFilteringBuildConfigurationAction.configure(ExcludedTaskFilteringBuildConfigurationAction.java:47)
        at org.gradle.execution.DefaultBuildConfigurationActionExecuter.configure(DefaultBuildConfigurationActionExecuter.java:57)
        at org.gradle.execution.DefaultBuildConfigurationActionExecuter.access$200(DefaultBuildConfigurationActionExecuter.java:26)
        at org.gradle.execution.DefaultBuildConfigurationActionExecuter$1.run(DefaultBuildConfigurationActionExecuter.java:43)
        at org.gradle.internal.Factories$1.create(Factories.java:25)
        at org.gradle.api.internal.project.DefaultProjectStateRegistry.withLenientState(DefaultProjectStateRegistry.java:132)
        at org.gradle.api.internal.project.DefaultProjectStateRegistry.withLenientState(DefaultProjectStateRegistry.java:124)
        at org.gradle.execution.DefaultBuildConfigurationActionExecuter.select(DefaultBuildConfigurationActionExecuter.java:39)
        at org.gradle.initialization.DefaultTaskExecutionPreparer.prepareForTaskExecution(DefaultTaskExecutionPreparer.java:38)
        at org.gradle.initialization.NotifyingTaskExecutionPreparer$CalculateTaskGraph.populateTaskGraph(NotifyingTaskExecutionPreparer.java:82)
        at org.gradle.initialization.NotifyingTaskExecutionPreparer$CalculateTaskGraph.run(NotifyingTaskExecutionPreparer.java:57)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:402)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:394)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor$1.execute(DefaultBuildOperationExecutor.java:165)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:250)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:158)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:92)
        at org.gradle.internal.operations.DelegatingBuildOperationExecutor.run(DelegatingBuildOperationExecutor.java:31)
        at org.gradle.initialization.NotifyingTaskExecutionPreparer.prepareForTaskExecution(NotifyingTaskExecutionPreparer.java:45)
        at org.gradle.initialization.DefaultGradleLauncher.prepareTaskExecution(DefaultGradleLauncher.java:205)
        at org.gradle.initialization.DefaultGradleLauncher.doClassicBuildStages(DefaultGradleLauncher.java:141)
        at org.gradle.initialization.DefaultGradleLauncher.doBuildStages(DefaultGradleLauncher.java:125)
        at org.gradle.initialization.DefaultGradleLauncher.executeTasks(DefaultGradleLauncher.java:105)
        at org.gradle.internal.invocation.GradleBuildController$1.execute(GradleBuildController.java:58)
        at org.gradle.internal.invocation.GradleBuildController$1.execute(GradleBuildController.java:55)
        at org.gradle.internal.invocation.GradleBuildController$3.create(GradleBuildController.java:82)
        at org.gradle.internal.invocation.GradleBuildController$3.create(GradleBuildController.java:75)
        at org.gradle.internal.work.DefaultWorkerLeaseService.withLocks(DefaultWorkerLeaseService.java:183)
        at org.gradle.internal.work.StopShieldingWorkerLeaseService.withLocks(StopShieldingWorkerLeaseService.java:40)
        at org.gradle.internal.invocation.GradleBuildController.doBuild(GradleBuildController.java:75)
        at org.gradle.internal.invocation.GradleBuildController.run(GradleBuildController.java:55)
        at org.gradle.tooling.internal.provider.ExecuteBuildActionRunner.run(ExecuteBuildActionRunner.java:31)
        at org.gradle.launcher.exec.ChainingBuildActionRunner.run(ChainingBuildActionRunner.java:35)
        at org.gradle.launcher.exec.BuildOutcomeReportingBuildActionRunner.run(BuildOutcomeReportingBuildActionRunner.java:58)
        at org.gradle.tooling.internal.provider.ValidatingBuildActionRunner.run(ValidatingBuildActionRunner.java:32)
        at org.gradle.launcher.exec.BuildCompletionNotifyingBuildActionRunner.run(BuildCompletionNotifyingBuildActionRunner.java:39)
        at org.gradle.launcher.exec.RunAsBuildOperationBuildActionRunner$3.call(RunAsBuildOperationBuildActionRunner.java:51)
        at org.gradle.launcher.exec.RunAsBuildOperationBuildActionRunner$3.call(RunAsBuildOperationBuildActionRunner.java:45)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor$CallableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:416)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor$CallableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:406)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor$1.execute(DefaultBuildOperationExecutor.java:165)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:250)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:158)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor.call(DefaultBuildOperationExecutor.java:102)
        at org.gradle.internal.operations.DelegatingBuildOperationExecutor.call(DelegatingBuildOperationExecutor.java:36)
        at org.gradle.launcher.exec.RunAsBuildOperationBuildActionRunner.run(RunAsBuildOperationBuildActionRunner.java:45)
        at org.gradle.launcher.exec.InProcessBuildActionExecuter$1.transform(InProcessBuildActionExecuter.java:49)
        at org.gradle.launcher.exec.InProcessBuildActionExecuter$1.transform(InProcessBuildActionExecuter.java:46)
        at org.gradle.composite.internal.DefaultRootBuildState.run(DefaultRootBuildState.java:78)
        at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:46)
        at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:31)
        at org.gradle.launcher.exec.BuildTreeScopeBuildActionExecuter.execute(BuildTreeScopeBuildActionExecuter.java:42)
        at org.gradle.launcher.exec.BuildTreeScopeBuildActionExecuter.execute(BuildTreeScopeBuildActionExecuter.java:28)
        at org.gradle.tooling.internal.provider.ContinuousBuildActionExecuter.execute(ContinuousBuildActionExecuter.java:78)
        at org.gradle.tooling.internal.provider.ContinuousBuildActionExecuter.execute(ContinuousBuildActionExecuter.java:52)
        at org.gradle.tooling.internal.provider.SubscribableBuildActionExecuter.execute(SubscribableBuildActionExecuter.java:59)
        at org.gradle.tooling.internal.provider.SubscribableBuildActionExecuter.execute(SubscribableBuildActionExecuter.java:36)
        at org.gradle.tooling.internal.provider.SessionScopeBuildActionExecuter.execute(SessionScopeBuildActionExecuter.java:68)
        at org.gradle.tooling.internal.provider.SessionScopeBuildActionExecuter.execute(SessionScopeBuildActionExecuter.java:38)
        at org.gradle.tooling.internal.provider.GradleThreadBuildActionExecuter.execute(GradleThreadBuildActionExecuter.java:37)
        at org.gradle.tooling.internal.provider.GradleThreadBuildActionExecuter.execute(GradleThreadBuildActionExecuter.java:26)
        at org.gradle.tooling.internal.provider.ParallelismConfigurationBuildActionExecuter.execute(ParallelismConfigurationBuildActionExecuter.java:43)
        at org.gradle.tooling.internal.provider.ParallelismConfigurationBuildActionExecuter.execute(ParallelismConfigurationBuildActionExecuter.java:29)
        at org.gradle.tooling.internal.provider.StartParamsValidatingActionExecuter.execute(StartParamsValidatingActionExecuter.java:60)
        at org.gradle.tooling.internal.provider.StartParamsValidatingActionExecuter.execute(StartParamsValidatingActionExecuter.java:32)
        at org.gradle.tooling.internal.provider.SessionFailureReportingActionExecuter.execute(SessionFailureReportingActionExecuter.java:55)
        at org.gradle.tooling.internal.provider.SessionFailureReportingActionExecuter.execute(SessionFailureReportingActionExecuter.java:41)
        at org.gradle.tooling.internal.provider.SetupLoggingActionExecuter.execute(SetupLoggingActionExecuter.java:48)
        at org.gradle.tooling.internal.provider.SetupLoggingActionExecuter.execute(SetupLoggingActionExecuter.java:32)
        at org.gradle.launcher.daemon.server.exec.ExecuteBuild.doBuild(ExecuteBuild.java:67)
        at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:36)
        at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:104)
        at org.gradle.launcher.daemon.server.exec.WatchForDisconnection.execute(WatchForDisconnection.java:37)
        at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:104)
        at org.gradle.launcher.daemon.server.exec.ResetDeprecationLogger.execute(ResetDeprecationLogger.java:26)
        at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:104)
        at org.gradle.launcher.daemon.server.exec.RequestStopIfSingleUsedDaemon.execute(RequestStopIfSingleUsedDaemon.java:34)
        at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:104)
        at org.gradle.launcher.daemon.server.exec.ForwardClientInput$2.call(ForwardClientInput.java:74)
        at org.gradle.launcher.daemon.server.exec.ForwardClientInput$2.call(ForwardClientInput.java:72)
        at org.gradle.util.Swapper.swap(Swapper.java:38)
        at org.gradle.launcher.daemon.server.exec.ForwardClientInput.execute(ForwardClientInput.java:72)
        at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:104)
        at org.gradle.launcher.daemon.server.exec.LogAndCheckHealth.execute(LogAndCheckHealth.java:55)
        at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:104)
        at org.gradle.launcher.daemon.server.exec.LogToClient.doBuild(LogToClient.java:62)
        at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:36)
        at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:104)
        at org.gradle.launcher.daemon.server.exec.EstablishBuildEnvironment.doBuild(EstablishBuildEnvironment.java:81)
        at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:36)
        at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:104)
        at org.gradle.launcher.daemon.server.exec.StartBuildOrRespondWithBusy$1.run(StartBuildOrRespondWithBusy.java:50)
        at org.gradle.launcher.daemon.server.DaemonStateCoordinator$1.run(DaemonStateCoordinator.java:295)
        at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:63)
        at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:46)
        at org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:55)
Caused by: org.gradle.api.internal.artifacts.ivyservice.DefaultLenientConfiguration$ArtifactResolveException: Could not resolve all files for configuration ':front50-sql:kotlinCompilerClasspath'.
        at org.gradle.api.internal.artifacts.configurations.DefaultConfiguration.rethrowFailure(DefaultConfiguration.java:1195)
        at org.gradle.api.internal.artifacts.configurations.DefaultConfiguration.access$2100(DefaultConfiguration.java:138)
        at org.gradle.api.internal.artifacts.configurations.DefaultConfiguration$ConfigurationFileCollection.getFiles(DefaultConfiguration.java:1170)
        at org.gradle.api.internal.artifacts.configurations.DefaultConfiguration.getFiles(DefaultConfiguration.java:472)
        at org.gradle.api.internal.artifacts.configurations.DefaultConfiguration_Decorated.getFiles(Unknown Source)
        at org.gradle.api.internal.artifacts.configurations.DefaultConfiguration.resolve(DefaultConfiguration.java:462)
        at org.jetbrains.kotlin.gradle.tasks.AbstractKotlinCompileTool.getComputedCompilerClasspath$kotlin_gradle_plugin(Tasks.kt:93)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at org.gradle.api.internal.tasks.properties.bean.AbstractNestedRuntimeBeanNode$BeanPropertyValue$1$1.create(AbstractNestedRuntimeBeanNode.java:75)
        at org.gradle.util.SingleMessageLogger.whileDisabled(SingleMessageLogger.java:341)
        at org.gradle.api.internal.tasks.properties.bean.AbstractNestedRuntimeBeanNode$BeanPropertyValue$1.get(AbstractNestedRuntimeBeanNode.java:72)
        at com.google.common.base.Suppliers$NonSerializableMemoizingSupplier.get(Suppliers.java:167)
        at org.gradle.api.internal.tasks.properties.bean.AbstractNestedRuntimeBeanNode$BeanPropertyValue.call(AbstractNestedRuntimeBeanNode.java:119)
        at org.gradle.util.GUtil.uncheckedCall(GUtil.java:459)
        at org.gradle.api.internal.file.collections.BuildDependenciesOnlyFileCollectionResolveContext.add(BuildDependenciesOnlyFileCollectionResolveContext.java:64)
        at org.gradle.api.internal.file.collections.BuildDependenciesOnlyFileCollectionResolveContext.add(BuildDependenciesOnlyFileCollectionResolveContext.java:72)
        at org.gradle.api.internal.file.DefaultFileCollectionFactory$ResolvingFileCollection.visitContents(DefaultFileCollectionFactory.java:209)
        at org.gradle.api.internal.file.CompositeFileCollection.visitDependencies(CompositeFileCollection.java:186)
        at org.gradle.api.internal.tasks.CachingTaskDependencyResolveContext$TaskGraphImpl.getNodeValues(CachingTaskDependencyResolveContext.java:106)
        at org.gradle.internal.graph.CachingDirectedGraphWalker$GraphWithEmptyEdges.getNodeValues(CachingDirectedGraphWalker.java:211)
        at org.gradle.internal.graph.CachingDirectedGraphWalker.doSearch(CachingDirectedGraphWalker.java:121)
        at org.gradle.internal.graph.CachingDirectedGraphWalker.findValues(CachingDirectedGraphWalker.java:73)
        at org.gradle.api.internal.tasks.CachingTaskDependencyResolveContext.getDependencies(CachingTaskDependencyResolveContext.java:66)
        ... 109 more
Caused by: org.gradle.internal.resolve.ModuleVersionNotFoundException: Cannot resolve external dependency org.jetbrains.kotlin:kotlin-compiler-embeddable:1.3.10 because no repositories are defined.
Required by:
    project :front50-sql


* Get more help at https://help.gradle.org

Deprecated Gradle features were used in this build, making it incompatible with Gradle 6.0.
Use '--warning-mode all' to show the individual deprecation warnings.
See https://docs.gradle.org/5.5.1/userguide/command_line_interface.html#sec:command_line_warnings

BUILD FAILED in 1s

推荐答案

错误消息告诉您出了什么问题:

The error message tells you what is wrong:

由于未定义存储库,因此无法解析外部依赖项org.jetbrains.kotlin:kotlin-compiler-embeddable:1.3.10.

Cannot resolve external dependency org.jetbrains.kotlin:kotlin-compiler-embeddable:1.3.10 because no repositories are defined.

再看看Gradle构建文件-您没有定义任何项目存储库(如果使用的是某些库的快照版本,则除了本地Maven存储库外). buildScript存储库仅用于插件,因此不用于项目依赖项.

Take another look at your Gradle build files - you don't have any project repositories defined (except for a local Maven repository if you are using snapshot versions of some libraries). The buildScript repositories are only used for plugins, so these are not used for project dependencies.

尝试将以下内容放入主构建文件的allprojects部分:

Try putting the following in the allprojects part of the main build file:

repositories {
    jcenter()
    mavenCentral()
}

这篇关于用Kotlin构建Gradle的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆