当前位置: 首页 > 知识库问答 >
问题:

从Java文件获取gradle运行时配置

潘宪
2023-03-14
task copyLibs(type: Copy) {
    from configurations.runtime
    into "$projectDir/libs"
}

Build.Gradle

apply plugin: 'maven'
apply plugin: 'groovy'
apply plugin: 'java'
apply plugin: 'com.jfrog.bintray'

sourceCompatibility = 1.8

dependencies {
    testCompile group: 'junit', name: 'junit', version: '4.11'
    compile gradleApi()
}

repositories {
    mavenCentral()
}

buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        classpath 'com.jfrog.bintray.gradle:gradle-bintray-plugin:1.4'
    }
}

共有1个答案

易奇希
2023-03-14

您实际上是在您的插件中,试图为一个还不存在的任务添加dependson,而在应用您的插件时,任务copylibs还不存在。稍后,当gradle解析build.gradle的其余部分时,它将被添加到任务图中。

如果任务copyLibs是标准的,您可以将其移动到插件实现中,这样插件就可以知道copyLibs了。

我不确定这是否行得通,必须对其进行测试,但您可能还可以向project.tasks添加一个侦听器(通过插件),以便每当将名为copylibs的任务添加到项目中时,您可以注册依赖项。

project.tasks.whenTaskAdded { task ->
  if (task.name == 'copyLibs') {
    MyTask.dependsOn(task)
  }
}
 类似资料:
  • 当我使用相对路径时,我可以从Eclipse运行Java程序。但是,当我将其作为JAR文件运行时,该路径不再有效。在我的src/components/SettingsWindow中。我有:

  • 我在eclipse(juno)中创建了一个简单的hello.jsp程序,当我试图通过run on server来运行这个jsp文件时,得到了以下错误 出现问题, 我已经删除了eclipse&tomcat服务器,然后重新安装。但是仍然得到相同的错误。我尝试选择服务器位置作为使用自定义位置,并给出不同的工作区路径。但什么都不管用。 我使用的是eclipse Juno、apache Tomcat-V6.

  • 我需要能够使用在JUnit测试运行期间激活的概要文件。我想知道是否有什么方法可以做到: 或任何其他相关方式。。。 我意识到有一个选项可以使用bu,但不知何故它不起作用。 有什么想法吗?

  • 问题内容: 我正在尝试从Java代码执行.py文件。我将.py文件移动到Java项目的默认目录中,并使用以下代码对其进行调用: 使用变量run或整个路径或“ python file.py”,我的代码正在运行,显示消息构建成功总时间为0秒,而没有执行file.py。我这是什么问题 问题答案: 您也可以这样使用: 要么 从Java运行Python脚本

  • 我正在尝试这样做: https://developers.google.com/identity/sign-in/web/backend-auth#calling-the-tokeninfo-endpoint 我用CLIENT_ID复制了粘贴的Java代码,但是除了用户标识、电子邮件和电子邮件验证之外,我无法获得任何更多的信息。idTokenString验证确定。还有其他人可以这样做吗? 我要求这

  • 我想在脚本中做的是: 列出docker主机上某些正在运行的容器 获取相应的docker-compose.yml文件位置 使用docker-compose立即重新启动相应docker-compose项目的所有容器