【问题标题】:Adding a Spring dependency into a gradle task将 Spring 依赖项添加到 gradle 任务中
【发布时间】:2018-03-02 03:44:09
【问题描述】:

我想在我的机器上添加一个特殊的 gradle 任务作为初始化脚本。该脚本位于 ~/.gradle/init.d 中。我们称之为 servertest.gradle。它看起来像这样:

import org.springframework.http.MediaType

allprojects {
    task servertest {
        doLast {
            MediaType.parseMediaType("application/json")
        }
    }
}

我可以运行任务,但它说的是:

> startup failed:
  initialization script '/home/user1/.gradle/init.d/servertest.gradle': 1: unable to resolve class org.springframework.http.MediaType
   @ line 1, column 1.
     import org.springframework.http.MediaType
     ^

  1 error

当然,我真正需要做的比这更复杂,但这是在 Gradle 任务中使用 Spring 库的简化示例。

如何将 spring 库导入到任务中?

【问题讨论】:

  • 是完整的 gradle 文件吗?还是部分?添加依赖项?
  • 这是完整的文件。它是一个初始化 gradle 脚本。有关详细信息,请参阅docs.gradle.org/current/userguide/init_scripts.html
  • 请检查解决方案,看看是否解决。

标签: maven gradle groovy


【解决方案1】:

基本上,缺少依赖项。

MediaType 类在 spring-web 库中。

下面是具有依赖关系的gradle 文件的外观:

import org.springframework.http.MediaType
initscript {
    repositories {
        mavenCentral()
    }
    dependencies {
       // https://mvnrepository.com/artifact/org.springframework/spring-web
       classpath group: 'org.springframework', name: 'spring-web', version: '4.3.11.RELEASE'
    }
}

allprojects {
    task servertest {
        doLast {
            MediaType.parseMediaType("application/json")
        }
    }
}

【讨论】:

  • 哇,成功了。感谢您的帮助!
  • @User1,很高兴它有帮助。
猜你喜欢
  • 2015-10-12
  • 2015-07-08
  • 2014-03-30
  • 2020-11-01
  • 1970-01-01
  • 2014-10-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多