java - 当其依赖仍在运行时执行 gradle 任务

标签 java gradle build.gradle e2e-testing end-to-end

我必须运行一个 jar 文件并对其执行 npm 测试,但使用 gradle 任务。我在 jar 运行后使用 dependsOn 运行 npm test

这些是我的 gradle 任务:

task runServer1 (type: Exec) {
// Run the jar file
}

task runNpmTest (type: Exec, dependsOn: ':runServer1') {
// Run npm tests
}

问题是,当我执行 gradle runNpmTest 时,gradle 停止在 runServer1 处,这是有道理的,因为服务器仍在运行。但我的 NPM 测试永远不会运行。 有什么想法吗?

最佳答案

这样就行不通了,因为 runServer1 任务仍在运行 - 它是一个进程。您需要的是在后台运行服务器 - 这样它就不会阻塞主线程 - 然后运行测试。这可能应该在单个任务中完成并通过操作进行配置。请看一下herehere捕捉一些有用的知识。

关于java - 当其依赖仍在运行时执行 gradle 任务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43882007/

相关文章:

java swingworker 线程更新主 Gui

java - 如何检查字符串是否多次包含相同的字母?

testing - 不要运行测试任务 - gradle clean build -x test

android - 如何修复 Android Studio 3.3 中的 AAPT2 警告 [以下项目选项已弃用并已删除 : android. enableAapt2]

java - 是否同步到足以使 BlockingQueue 的 drainTo() 方法原子化?

Java Swing L&F native 键盘快捷键

android - 有没有办法禁用特定包的使用?

gradle - Gradle构建错误

android-studio - 如何从 Android Studio 2.0 beta 5 中的另一个模块导入类?

android - Java类的Gradle设置outputDir