- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我们正在开发一个 Java 项目,该项目能够在构建时检测(更改)类文件。我们定义了一个 Gradle 任务,它调用基于 java 的 Ant 任务,该任务采用 inputDir (例如 build/classes)和 outputDir (例如 build/classes-instrumented)以及可能的其他参数。编译后,主类文件和测试类文件将分别调用该任务。由于“普通”java sourceSet 不太适合,我们的第一个想法是实现我们自己的 sourceSet,但找不到简单的方法。一个合理的替代方案,类似于 ANTLR 等,似乎是额外的变量。由于我需要几个,所以我去找了一张 map 。
sourceSets.all { ext.instrumentation = [:] }
sourceSets.all {
instrumentation.inputDir = null
instrumentation.outputDir = null
instrumentation.classPath = null
}
def postfix = '-instrumented'
下面您将看到我们如何初始化变量。
sourceSets {
main {
instrumentation.inputDir = sourceSets.main.output.classesDir
instrumentation.outputDir = instrumentation.inputDir + postfix
instrumentation.classPath = sourceSets.main.output + configurations.compile
}
test {
instrumentation.inputDir = sourceSets.test.output.classesDir
instrumentation.outputDir = instrumentation.inputDir + postfix
}
}
但是失败,并显示“无法在根目录上找到参数 [build_f2cvmoa3v4hnjefifhpuk6ira$_run_closure5_closure23@12a14b74] 的方法 main()”项目“延续”。”
我们正在使用 Gradle 2.1
我有以下问题:
非常感谢您的帮助
最佳答案
解决方案:安装最新版本。
我遇到了同样的问题,我阅读了 gradle 3 的 gradle 文档,但安装了 gradle 2.7。
https://docs.gradle.org/2.7/userguide/tutorial_java_projects.html#N103CD
,但在该版本的 java 插件中没有找到有关 sourceSet 的信息关于java - 使用 Map 变量扩展 sourceSets 时,Gradle 出现奇怪的行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25876798/
这个问题类似于Make one source set dependent on another 除了主要的 SourceSet,我还有一个 testenv SourceSet。 testenv Sou
我是 gradle & groovy 的新手,我不知道这样一个声明的确切含义: sourceSets.all*.java 它是一个有效的 groovy 表达式吗? 最佳答案 它是一个 Groovy G
如何将单个源集添加到多个子项目? 首先 ...是的,我知道这有多荒谬。这只是我必须做的事情。 设置 该项目使用 Groovy DSL。 有 3 个子项目(A、B、C),每个子项目都有自己独特的主源集。
当您遇到这样的障碍时: sourceSets { main { java { srcDir 'spec/src' srcDir 'shared/src'
我的gradle多项目布局是这样的: rootProject |-- project1 | |-- project2 | |-- src | |-- main |
我正在尝试从 Eclipse/ANT 迁移到 Android Studio/Gradle。我们当前的 ant-build 支持 N 个客户(build-targets),一个客户由三元组皮肤/玩家/客
我正在创建一个具有管理模式和用户模式的应用程序,每个模式都有自己的布局、字符串和可绘制资源文件。我想知道如何根据用户可以在运行时切换的应用程序模式更改资源 SourceSet。 目前,我使用 2 种产
我正在使用Gradle的TestKit,并希望确保插件将正确的路径添加到sourceSets.main.proto。 如何访问该信息? 最佳答案 我还没有找到从TestKit访问Project对象的方
我已经开始在Gradle构建中使用Kotlin DSL。在用Groovy DSL编写以下代码之前: sourceSets.main.resources.srcDirs("src/main/resour
最近,我正在一个使用许多gradle groovy插件的项目中工作,我引入了一个块,在sourceSets中添加了一些静态文件。现在如何编写对sourceSets块的测试? 我在sourceSets中
我想知道是否有返回 SourceSet 完整路径字符串或文件目录的属性,例如 ${project.projectDir}/src/${sourceSet.name}。 apply plugin: 'j
我有一个 build.gradle.kts对于一个小型的纯 kotlin 项目(我知道我使用的是稍微非标准的源路径): plugins { kotlin("jvm") version "1.3
假设我有以下 sourceSets: sourceSets { flavor1 { assets.srcDirs = ['repo-assets/flavor1']
我有 2 种风格的应用程序,每种都有自己的 google maps (v1) key 用于调试和发布(意味着总共有 4 个 key )。所以我想知道我是否可以根据 buildType 和 produc
sourceSets { main { java.srcDirs = ['src/main/kotlin', 'src/main/java'] res.srcDirs =
在 Gradle 6.1.1 上,如何为 android 项目添加 sourceSets? 其他问题的答案不再有效,getByName("name") 返回错误,SourceSet with name
我试图让我的一个项目 (ProjectA) 生成一个包含所有测试类的 jar 文件,以便它可以在 ProjectB 中使用。 我做了一些研究,发现这是一个可能的解决方案:Create test jar
我是 Gradle 的新手,我的任务是将大项目从 Maven 转移到 Gradle。还有一个问题,我需要在 wicket 模块中设置 sourceSet,因为 HTML 文件位于 java 文件旁边。
像上面一样,我的build.gradle文件无法同步,因为它在源集“main”上找不到属性“jni”。我正在使用gradle-experimental:0.7.0。 我不想在编译中使用Android.
我想创建gradle插件,它将添加类型为 JavaExec 的其他任务 我有插件: class CustomPlugin implements Plugin { @Override void
我是一名优秀的程序员,十分优秀!