javagent需要一个罐子。如何使用Gradle构建和测试?

时间:2014-03-03 16:55:58

标签: java unit-testing jvm gradle javaagents

我正在构建一个JavaAgent,它可以通过--javaagent:my.jar=<option>加载,也可以在运行时动态连接到jvm(例如virtualMachine.loadAgent(jarFile, "");)。无论如何,它需要一个带有正确manifest.txt文件的Jar文件才能工作。这对我现在的测试来说是个问题。

我正在使用Gradle,目前我正面临以下问题:

  1. Gradle的测试任务不依赖于Jar(see here)=&gt;需要补充 测试执行的依赖性
  2. 默认情况下,已编译的测试类将添加到类路径中。必须删除测试类路径并替换为jar文件名
  3. 任何想法如何实现。特别是第二次?

    感谢您的帮助

1 个答案:

答案 0 :(得分:0)

我假设通过2中的'编译测试类',你实际上是指主要的类

如果是这样,你应该可以做1&amp; 2喜欢这个

 sourceSets {
     test {
         runtimeClasspath = output + configurations.testRuntime 
     }
 }

dependencies {
   testRuntime files(jar.archivePath) {
        builtBy jar
   }
}