You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sirona.apache.org by rm...@apache.org on 2014/11/27 11:03:23 UTC

svn commit: r1642070 - in /incubator/sirona/trunk/agent/javaagent/src/test/java/org/apache/sirona/javaagent: AgentArgs.java JavaAgentRunner.java

Author: rmannibucau
Date: Thu Nov 27 10:03:23 2014
New Revision: 1642070

URL: http://svn.apache.org/r1642070
Log:
allow javaagent runner to not remove target/classes

Modified:
    incubator/sirona/trunk/agent/javaagent/src/test/java/org/apache/sirona/javaagent/AgentArgs.java
    incubator/sirona/trunk/agent/javaagent/src/test/java/org/apache/sirona/javaagent/JavaAgentRunner.java

Modified: incubator/sirona/trunk/agent/javaagent/src/test/java/org/apache/sirona/javaagent/AgentArgs.java
URL: http://svn.apache.org/viewvc/incubator/sirona/trunk/agent/javaagent/src/test/java/org/apache/sirona/javaagent/AgentArgs.java?rev=1642070&r1=1642069&r2=1642070&view=diff
==============================================================================
--- incubator/sirona/trunk/agent/javaagent/src/test/java/org/apache/sirona/javaagent/AgentArgs.java (original)
+++ incubator/sirona/trunk/agent/javaagent/src/test/java/org/apache/sirona/javaagent/AgentArgs.java Thu Nov 27 10:03:23 2014
@@ -28,6 +28,8 @@ import java.lang.annotation.Target;
 @Retention ( RetentionPolicy.RUNTIME )
 public @interface AgentArgs
 {
+    boolean removeTargetClassesFromClasspath() default true;
+
     String value();
 
     String maxMem() default "";

Modified: incubator/sirona/trunk/agent/javaagent/src/test/java/org/apache/sirona/javaagent/JavaAgentRunner.java
URL: http://svn.apache.org/viewvc/incubator/sirona/trunk/agent/javaagent/src/test/java/org/apache/sirona/javaagent/JavaAgentRunner.java?rev=1642070&r1=1642069&r2=1642070&view=diff
==============================================================================
--- incubator/sirona/trunk/agent/javaagent/src/test/java/org/apache/sirona/javaagent/JavaAgentRunner.java (original)
+++ incubator/sirona/trunk/agent/javaagent/src/test/java/org/apache/sirona/javaagent/JavaAgentRunner.java Thu Nov 27 10:03:23 2014
@@ -173,8 +173,10 @@ public class JavaAgentRunner extends Blo
             }
         }
 
+        final String cp = System.getProperty("surefire.test.class.path", System.getProperty("java.class.path"));
+
         args.add("-cp");
-        args.add(removeAgentFromCp(System.getProperty("surefire.test.class.path", System.getProperty("java.class.path"))));
+        args.add(agentArgs == null || agentArgs.removeTargetClassesFromClasspath() ? removeAgentFromCp(cp) : cp);
         args.add(JavaAgentRunner.class.getName());
         args.add(mtd.getMethod().getDeclaringClass().getName());
         args.add(mtd.getName());
@@ -185,12 +187,12 @@ public class JavaAgentRunner extends Blo
     }
 
     private static String removeAgentFromCp(final String property) {
-        final String path = "target" + File.separator + "classes";
+        final String path = new File("target/classes").getAbsolutePath();
         final String sep = System.getProperty("path.separator");
         final String[] segments = property.split(sep);
         final StringBuilder builder = new StringBuilder(property.length());
         for (final String segment : segments) {
-            if (!segment.endsWith(path)) {
+            if (!segment.equals(path)) {
                 builder.append(segment).append(sep);
             }
         }