Author: rmannibucau
Date: Tue Apr 29 18:06:07 2014
New Revision: 1591037

URL: http://svn.apache.org/r1591037
Log:
TOMEE-1186 supporting system props on ExecRunner

Modified:
    
tomee/tomee/trunk/maven/tomee-maven-plugin/src/main/java/org/apache/openejb/maven/plugin/runner/ExecRunner.java

Modified: 
tomee/tomee/trunk/maven/tomee-maven-plugin/src/main/java/org/apache/openejb/maven/plugin/runner/ExecRunner.java
URL: 
http://svn.apache.org/viewvc/tomee/tomee/trunk/maven/tomee-maven-plugin/src/main/java/org/apache/openejb/maven/plugin/runner/ExecRunner.java?rev=1591037&r1=1591036&r2=1591037&view=diff
==============================================================================
--- 
tomee/tomee/trunk/maven/tomee-maven-plugin/src/main/java/org/apache/openejb/maven/plugin/runner/ExecRunner.java
 (original)
+++ 
tomee/tomee/trunk/maven/tomee-maven-plugin/src/main/java/org/apache/openejb/maven/plugin/runner/ExecRunner.java
 Tue Apr 29 18:06:07 2014
@@ -135,9 +135,11 @@ public class ExecRunner {
 
             final ProcessBuilder builder = new 
ProcessBuilder(params.toArray(new 
String[params.size()])).directory(distribOutput);
 
+            final String additionalArgs = 
System.getProperty("additionalSystemProperties");
+            final String existingOpts = System.getenv("CATALINA_OPTS");
             final String catalinaOpts = config.getProperty("catalinaOpts");
-            if (catalinaOpts != null) { // inherit from existing env
-                builder.environment().put("CATALINA_OPTS", catalinaOpts);
+            if (catalinaOpts != null || existingOpts != null || additionalArgs 
!= null) { // inherit from existing env
+                builder.environment().put("CATALINA_OPTS", 
identityOrEmpty(catalinaOpts) + " " + identityOrEmpty(existingOpts) + " " + 
identityOrEmpty(additionalArgs));
             }
 
             boolean redirectOut = false;
@@ -160,6 +162,10 @@ public class ExecRunner {
         System.out.println("Exited Successfully!");
     }
 
+    private static String identityOrEmpty(final String value) {
+        return (value != null ? value : "");
+    }
+
     private ExecRunner() {
         // no-op
     }


Reply via email to