Author: sebb
Date: Thu Apr 23 22:46:49 2009
New Revision: 768083

URL: http://svn.apache.org/viewvc?rev=768083&view=rev
Log:
Add non-GUI stoptest and shutdown commands

Added:
    jakarta/jmeter/trunk/bin/shutdown.cmd   (with props)
    jakarta/jmeter/trunk/bin/shutdown.sh   (with props)
    jakarta/jmeter/trunk/bin/stoptest.cmd   (with props)
    jakarta/jmeter/trunk/bin/stoptest.sh   (with props)
    jakarta/jmeter/trunk/src/core/org/apache/jmeter/util/ShutdownClient.java   
(with props)
Modified:
    jakarta/jmeter/trunk/bin/jmeter.properties
    jakarta/jmeter/trunk/build.xml
    jakarta/jmeter/trunk/docs/images/screenshots/test_action.png
    
jakarta/jmeter/trunk/src/core/org/apache/jmeter/engine/StandardJMeterEngine.java
    jakarta/jmeter/trunk/xdocs/changes.xml
    jakarta/jmeter/trunk/xdocs/usermanual/build-test-plan.xml
    jakarta/jmeter/trunk/xdocs/usermanual/component_reference.xml
    jakarta/jmeter/trunk/xdocs/usermanual/get-started.xml

Modified: jakarta/jmeter/trunk/bin/jmeter.properties
URL: 
http://svn.apache.org/viewvc/jakarta/jmeter/trunk/bin/jmeter.properties?rev=768083&r1=768082&r2=768083&view=diff
==============================================================================
--- jakarta/jmeter/trunk/bin/jmeter.properties (original)
+++ jakarta/jmeter/trunk/bin/jmeter.properties Thu Apr 23 22:46:49 2009
@@ -648,8 +648,12 @@
 # Number of milliseconds to wait for a thread to stop
 #jmeterengine.threadstop.wait=5000
 
+# If running non-GUI, then JMeter listens on the following port for a shutdown 
message.
+# To disable, set the port to 0.
+#jmeterengine.nongui.port=4445
+
 #Should JMeter expand the tree when loading a test plan?
-#onload.expandtree=false
+#onload.expandtree=true
 
 # Maximum size of HTML page that can be displayed; default=200 * 1024
 # Set to 0 to disable the size check

Added: jakarta/jmeter/trunk/bin/shutdown.cmd
URL: 
http://svn.apache.org/viewvc/jakarta/jmeter/trunk/bin/shutdown.cmd?rev=768083&view=auto
==============================================================================
--- jakarta/jmeter/trunk/bin/shutdown.cmd (added)
+++ jakarta/jmeter/trunk/bin/shutdown.cmd Thu Apr 23 22:46:49 2009
@@ -0,0 +1,21 @@
+...@echo off
+
+rem   Licensed to the Apache Software Foundation (ASF) under one or more
+rem   contributor license agreements.  See the NOTICE file distributed with
+rem   this work for additional information regarding copyright ownership.
+rem   The ASF licenses this file to You under the Apache License, Version 2.0
+rem   (the "License"); you may not use this file except in compliance with
+rem   the License.  You may obtain a copy of the License at
+rem 
+rem       http://www.apache.org/licenses/LICENSE-2.0
+rem 
+rem   Unless required by applicable law or agreed to in writing, software
+rem   distributed under the License is distributed on an "AS IS" BASIS,
+rem   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+rem   See the License for the specific language governing permissions and
+rem   limitations under the License.
+
+rem   Run the Shutdown client
+
+java -cp %~dp0ApacheJMeter.jar org.apache.jmeter.util.ShutdownClient Shutdown 
%*
+pause 
\ No newline at end of file

Propchange: jakarta/jmeter/trunk/bin/shutdown.cmd
------------------------------------------------------------------------------
    svn:eol-style = CRLF

Added: jakarta/jmeter/trunk/bin/shutdown.sh
URL: 
http://svn.apache.org/viewvc/jakarta/jmeter/trunk/bin/shutdown.sh?rev=768083&view=auto
==============================================================================
--- jakarta/jmeter/trunk/bin/shutdown.sh (added)
+++ jakarta/jmeter/trunk/bin/shutdown.sh Thu Apr 23 22:46:49 2009
@@ -0,0 +1,22 @@
+#!/bin/sh
+
+##   Licensed to the Apache Software Foundation (ASF) under one or more
+##   contributor license agreements.  See the NOTICE file distributed with
+##   this work for additional information regarding copyright ownership.
+##   The ASF licenses this file to You under the Apache License, Version 2.0
+##   (the "License"); you may not use this file except in compliance with
+##   the License.  You may obtain a copy of the License at
+## 
+##       http://www.apache.org/licenses/LICENSE-2.0
+## 
+##   Unless required by applicable law or agreed to in writing, software
+##   distributed under the License is distributed on an "AS IS" BASIS,
+##   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+##   See the License for the specific language governing permissions and
+##   limitations under the License.
+
+# Run the JMeter shutdown client
+
+DIRNAME=`dirname $0`
+
+java -cp ${DIRNAME}/ApacheJMeter.jar org.apache.jmeter.util.ShutdownClient 
Shutdown "$@"

Propchange: jakarta/jmeter/trunk/bin/shutdown.sh
------------------------------------------------------------------------------
    svn:eol-style = native

Added: jakarta/jmeter/trunk/bin/stoptest.cmd
URL: 
http://svn.apache.org/viewvc/jakarta/jmeter/trunk/bin/stoptest.cmd?rev=768083&view=auto
==============================================================================
--- jakarta/jmeter/trunk/bin/stoptest.cmd (added)
+++ jakarta/jmeter/trunk/bin/stoptest.cmd Thu Apr 23 22:46:49 2009
@@ -0,0 +1,21 @@
+...@echo off
+
+rem   Licensed to the Apache Software Foundation (ASF) under one or more
+rem   contributor license agreements.  See the NOTICE file distributed with
+rem   this work for additional information regarding copyright ownership.
+rem   The ASF licenses this file to You under the Apache License, Version 2.0
+rem   (the "License"); you may not use this file except in compliance with
+rem   the License.  You may obtain a copy of the License at
+rem 
+rem       http://www.apache.org/licenses/LICENSE-2.0
+rem 
+rem   Unless required by applicable law or agreed to in writing, software
+rem   distributed under the License is distributed on an "AS IS" BASIS,
+rem   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+rem   See the License for the specific language governing permissions and
+rem   limitations under the License.
+
+rem   Run the Shutdown client
+
+java -cp %~dp0ApacheJMeter.jar org.apache.jmeter.util.ShutdownClient 
StopTestNow %*
+pause 
\ No newline at end of file

Propchange: jakarta/jmeter/trunk/bin/stoptest.cmd
------------------------------------------------------------------------------
    svn:eol-style = CRLF

Added: jakarta/jmeter/trunk/bin/stoptest.sh
URL: 
http://svn.apache.org/viewvc/jakarta/jmeter/trunk/bin/stoptest.sh?rev=768083&view=auto
==============================================================================
--- jakarta/jmeter/trunk/bin/stoptest.sh (added)
+++ jakarta/jmeter/trunk/bin/stoptest.sh Thu Apr 23 22:46:49 2009
@@ -0,0 +1,22 @@
+#!/bin/sh
+
+##   Licensed to the Apache Software Foundation (ASF) under one or more
+##   contributor license agreements.  See the NOTICE file distributed with
+##   this work for additional information regarding copyright ownership.
+##   The ASF licenses this file to You under the Apache License, Version 2.0
+##   (the "License"); you may not use this file except in compliance with
+##   the License.  You may obtain a copy of the License at
+## 
+##       http://www.apache.org/licenses/LICENSE-2.0
+## 
+##   Unless required by applicable law or agreed to in writing, software
+##   distributed under the License is distributed on an "AS IS" BASIS,
+##   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+##   See the License for the specific language governing permissions and
+##   limitations under the License.
+
+# Run the JMeter shutdown client
+
+DIRNAME=`dirname $0`
+
+java -cp ${DIRNAME}/ApacheJMeter.jar org.apache.jmeter.util.ShutdownClient 
StopTestNow "$@"

Propchange: jakarta/jmeter/trunk/bin/stoptest.sh
------------------------------------------------------------------------------
    svn:eol-style = native

Modified: jakarta/jmeter/trunk/build.xml
URL: 
http://svn.apache.org/viewvc/jakarta/jmeter/trunk/build.xml?rev=768083&r1=768082&r2=768083&view=diff
==============================================================================
--- jakarta/jmeter/trunk/build.xml (original)
+++ jakarta/jmeter/trunk/build.xml Thu Apr 23 22:46:49 2009
@@ -789,7 +789,7 @@
 
     <!-- JMeter launch jar -->
     <jar jarfile="${dest.jar.jmeter}/ApacheJMeter.jar" 
-        includes="**/NewDriver*,**/DynamicClassLoader*" 
+        
includes="**/NewDriver*,**/DynamicClassLoader*,**/ShutdownClient.class" 
         basedir="${build.core}" 
         manifest="${build.dir}/MANIFEST_BIN.MF">
         <metainf dir="." includes="LICENSE,NOTICE"/>
@@ -1003,7 +1003,8 @@
       List of Unix executable files in the binary distribution
       These need special handling to create the correct file mode
   -->
-  <property name="dist.executables" value="${dest.jar.jmeter}/jmeter 
${dest.jar.jmeter}/jmeter.sh ${dest.jar.jmeter}/jmeter-server"/>
+  <property name="dist.executables" 
+       value="${dest.jar.jmeter}/jmeter ${dest.jar.jmeter}/jmeter-server 
${dest.jar.jmeter}/*.sh"/>
 
   <!-- List of files in source distribution that are eol=native -->
   <patternset id="dist.sources.native">

Modified: jakarta/jmeter/trunk/docs/images/screenshots/test_action.png
URL: 
http://svn.apache.org/viewvc/jakarta/jmeter/trunk/docs/images/screenshots/test_action.png?rev=768083&r1=768082&r2=768083&view=diff
==============================================================================
Binary files - no diff available.

Modified: 
jakarta/jmeter/trunk/src/core/org/apache/jmeter/engine/StandardJMeterEngine.java
URL: 
http://svn.apache.org/viewvc/jakarta/jmeter/trunk/src/core/org/apache/jmeter/engine/StandardJMeterEngine.java?rev=768083&r1=768082&r2=768083&view=diff
==============================================================================
--- 
jakarta/jmeter/trunk/src/core/org/apache/jmeter/engine/StandardJMeterEngine.java
 (original)
+++ 
jakarta/jmeter/trunk/src/core/org/apache/jmeter/engine/StandardJMeterEngine.java
 Thu Apr 23 22:46:49 2009
@@ -20,6 +20,9 @@
 
 import java.io.PrintWriter;
 import java.io.StringWriter;
+import java.net.DatagramPacket;
+import java.net.DatagramSocket;
+import java.net.InetAddress;
 import java.util.ArrayList;
 import java.util.Collections;
 import java.util.Date;
@@ -59,23 +62,8 @@
 
     private static final long WAIT_TO_DIE = 
JMeterUtils.getPropDefault("jmeterengine.threadstop.wait", 5 * 1000); // 5 
seconds
 
-    /** JMeterThread => its JVM thread */
-    private final Map/*<JMeterThread, Thread>*/ allThreads;
-
-    /** flag to show that groups are still being created, i.e test plan is not 
complete */
-    private volatile boolean startingGroups;
-
-    /** Flag to show whether test is running. Set to false to stop creating 
more threads. */
-    private volatile boolean running = false;
-
-    /** Thread Groups run sequentially */
-    private volatile boolean serialized = false;
-
-    private HashTree test;
-
-    private volatile SearchByClass testListenersSave;
-
-    private final String host;
+    /** UDP port used in non-GUI runs. Disabled if <=1000. */
+    private static final int UDP_PORT = 
JMeterUtils.getPropDefault("jmeterengine.nongui.port", 4445);
 
     // Should we exit at end of the test? (only applies to server, because 
host is non-null)
     private static final boolean exitAfterTest =
@@ -90,12 +78,38 @@
             log.info("To revert to the earlier behaviour, define 
jmeterengine.startlistenerslater=false");
         }
     }
+
     // Allow engine and threads to be stopped from outside a thread
     // e.g. from beanshell server
     // Assumes that there is only one instance of the engine
     // at any one time so it is not guaranteed to work ...
     private volatile static StandardJMeterEngine engine;
 
+    /*
+     * Allow functions etc to register for testStopped notification.
+     * Only used by the function parser so far.
+     * The list is merged with the testListeners and then cleared.
+     */
+    private static final List testList = new ArrayList();
+
+    /** JMeterThread => its JVM thread */
+    private final Map/*<JMeterThread, Thread>*/ allThreads;
+
+    /** flag to show that groups are still being created, i.e test plan is not 
complete */
+    private volatile boolean startingGroups;
+
+    /** Flag to show whether test is running. Set to false to stop creating 
more threads. */
+    private volatile boolean running = false;
+
+    /** Thread Groups run sequentially */
+    private volatile boolean serialized = false;
+
+    private HashTree test;
+
+    private volatile SearchByClass testListenersSave;
+
+    private final String host;
+
     public static void stopEngineNow() {
         if (engine != null) {// May be null if called from Unit test
             engine.stopTest(true);
@@ -108,13 +122,6 @@
         }
     }
 
-    /*
-     * Allow functions etc to register for testStopped notification.
-     * Only used by the function parser so far.
-     * The list is merged with the testListeners and then cleared.
-     */
-    private static final List testList = new ArrayList();
-
     public static synchronized void register(TestListener tl) {
         testList.add(tl);
     }
@@ -190,6 +197,15 @@
         try {
             Thread runningThread = new Thread(new 
MyThreadGroup("JMeterThreadGroup"),this);
             runningThread.start();
+            if (JMeter.isNonGUI() && UDP_PORT > 1000){
+                Thread waiter = new Thread(){
+                    public void run() {
+                        waitForSignals();
+                    }
+                };
+                waiter.setDaemon(true);
+                waiter.start();
+            }
         } catch (Exception err) {
             stopTest();
             StringWriter string = new StringWriter();
@@ -199,6 +215,42 @@
         }
     }
 
+    private void waitForSignals() {
+        byte[] buf = new byte[80];
+        DatagramSocket socket = null;
+        System.out.println("Waiting for possible shutdown message on port 
"+UDP_PORT);
+        try {
+            socket = new DatagramSocket(UDP_PORT);
+            DatagramPacket request = new DatagramPacket(buf, buf.length);
+            while(true) {
+                socket.receive(request);
+                InetAddress address = request.getAddress();
+                // Only accept commands from the local host
+                if (address.isLoopbackAddress()){
+                    String command = new String(request.getData(), 
request.getOffset(), request.getLength(),"ASCII");
+                    System.out.println("Command: "+command+" received from 
"+address);
+                    log.info("Command: "+command+" received from "+address);
+                    if (command.equals("StopTestNow")){
+                        stopTest();
+                        break;
+                    } else if (command.equals("Shutdown")) {
+                        askThreadsToStop();
+                        break;                        
+                    } else {
+                    }
+                }
+            }
+            socket.close();
+        } catch (Exception e) {
+            e.printStackTrace();
+        } finally {
+            if (socket != null) {
+                socket.close();
+            }
+        }
+        
+    }
+
     private void removeThreadGroups(List elements) {
         Iterator iter = elements.iterator();
         while (iter.hasNext()) {

Added: jakarta/jmeter/trunk/src/core/org/apache/jmeter/util/ShutdownClient.java
URL: 
http://svn.apache.org/viewvc/jakarta/jmeter/trunk/src/core/org/apache/jmeter/util/ShutdownClient.java?rev=768083&view=auto
==============================================================================
--- jakarta/jmeter/trunk/src/core/org/apache/jmeter/util/ShutdownClient.java 
(added)
+++ jakarta/jmeter/trunk/src/core/org/apache/jmeter/util/ShutdownClient.java 
Thu Apr 23 22:46:49 2009
@@ -0,0 +1,47 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * 
+ */
+
+package org.apache.jmeter.util;
+
+import java.io.IOException;
+import java.net.DatagramPacket;
+import java.net.DatagramSocket;
+import java.net.InetAddress;
+
+
+/**
+ * Simple utility to send a shutdown message to a non-GUI instance of JMeter
+ */
+public class ShutdownClient {
+    public static void main(String[] args) throws IOException {
+        int port = 4445;
+        if (args.length > 1){
+            port = Integer.parseInt(args[1]);
+        } else if (args.length == 0) {
+            throw new RuntimeException("Usage: command [port]");
+        }
+        String command = args[0];
+        System.out.println("Sending "+command+" request to port "+port);
+        DatagramSocket socket = new DatagramSocket();
+        byte[] buf = command.getBytes("ASCII");
+        InetAddress address = InetAddress.getByName("localhost");
+        DatagramPacket packet = new DatagramPacket(buf, buf.length, address, 
port);
+        socket.send(packet);    
+        socket.close();
+    }
+}

Propchange: 
jakarta/jmeter/trunk/src/core/org/apache/jmeter/util/ShutdownClient.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: 
jakarta/jmeter/trunk/src/core/org/apache/jmeter/util/ShutdownClient.java
------------------------------------------------------------------------------
    svn:keywords = Author Date Id Revision

Modified: jakarta/jmeter/trunk/xdocs/changes.xml
URL: 
http://svn.apache.org/viewvc/jakarta/jmeter/trunk/xdocs/changes.xml?rev=768083&r1=768082&r2=768083&view=diff
==============================================================================
--- jakarta/jmeter/trunk/xdocs/changes.xml (original)
+++ jakarta/jmeter/trunk/xdocs/changes.xml Thu Apr 23 22:46:49 2009
@@ -244,6 +244,7 @@
 <li>The Menu items Stop and Shutdown now behave better. Shutdown will now wait 
until all threads exit. 
 In GUI mode it can be cancelled and Stop run instead. 
 Stop now reports if some threads will not exit, and exits if running in 
non-GUI mode</li>
+<li>Add UDP server to wait for shutdown message if running in non-GUI mode; 
add UDP client to send the message.</li>
 </ul>
 
 <h3>Non-functional changes</h3>

Modified: jakarta/jmeter/trunk/xdocs/usermanual/build-test-plan.xml
URL: 
http://svn.apache.org/viewvc/jakarta/jmeter/trunk/xdocs/usermanual/build-test-plan.xml?rev=768083&r1=768082&r2=768083&view=diff
==============================================================================
--- jakarta/jmeter/trunk/xdocs/usermanual/build-test-plan.xml (original)
+++ jakarta/jmeter/trunk/xdocs/usermanual/build-test-plan.xml Thu Apr 23 
22:46:49 2009
@@ -79,22 +79,49 @@
 </subsection>
 
 <subsection name="&sect-num;.5 Running a Test Plan" anchor="run">
-<p>To run your test plan, choose "start" from the "run" menu item.  To stop 
your test
-plan, choose "stop" from the same menu.  
+<p>To run your test plan, choose "Start" (Control + r) from the "Run" menu 
item.  
 When JMeter is running, it shows a small green box at the right hand end of 
the section just under the menu bar.
-You can also check the "run" menu.  
-If "start" is disabled, and "stop" is enabled,
+You can also check the "Run" menu.  
+If "Start" is disabled, and "Stop" is enabled,
 then JMeter is running your test plan (or, at least, it thinks it is).</p>
 <p>
-There are two types of stop command:
+The numbers to the left of the green box are the number of active threads / 
total number of threads.
+</p>
+</subsection>
+
+<subsection name="&sect-num;.6 Stopping a Test" anchor="stop">
+<p>
+There are two types of stop command available from the menu:
+<ul>
+<li>Stop (Control + '.') - stops the threads immediately if possible.
+In Versions of JMeter after 2.3.2, many samplers are now Interruptible which 
means that active samples can be terminated early.
+The stop command will check that all threads have stopped within the default 
timeout, which is 5000 ms = 5 seconds.
+[This can be changed using the JMeter property 
<code>jmeterengine.threadstop.wait</code>]
+If the threads have not stopped, then a message is displayed.
+The Stop command can be retried, but if it fails, then it is necessary to exit 
JMeter to clean up.
+</li>
+<li>Shutdown (Control + ',')- requests the threads to stop at the end of any 
current work.
+Will not interrupt any active samples.
+The modal shutdown dialog box will remain active until all threads have 
stopped.</li>
+</ul>
+Versions of JMeter after 2.3.2 allow a Stop to be initiated if Shutdown is 
taking too long.
+Close the Shutdown dialog box and select Run/Stop, or just press Control + '.'.
+</p>
+<p>
+When running JMeter in non-GUI mode, there is no Menu, and JMeter does not 
react to keystrokes such as Control + '.'.
+So in versions after 2.3.2, JMeter non-GUI mode will listen for commands on a 
specific port
+(default 4445, see the JMeter property <code>jmeterengine.nongui.port</code>).
+The commands currently supported are:
 <ul>
-<li>Stop (Control + '.') - stops the threads immediately</li>
-<li>Shutdown (Control + ',')- requests the threads to stop at the end of any 
current work</li>
+<li>Shutdown - graceful shutdown</li>
+<li>StopTestNow - immediate shutdown</li>
 </ul>
+These commands can be sent by using the <code>shutdown[.cmd|.sh]</code> or 
<code>stoptest[.cmd|.sh]</code> script
+respectively. The scripts are to be found in the JMeter <code>bin</code> 
directory.
 </p>
 </subsection>
 
-<subsection name="&sect-num;.6 Error reporting" anchor="error_reporting">
+<subsection name="&sect-num;.7 Error reporting" anchor="error_reporting">
 <p>
 JMeter reports warnings and errors to the jmeter.log file, as well as some 
information on the test run itself.
 Just occasionally there may be some errors that JMeter is unable to trap and 
log; these will appear on the command console.

Modified: jakarta/jmeter/trunk/xdocs/usermanual/component_reference.xml
URL: 
http://svn.apache.org/viewvc/jakarta/jmeter/trunk/xdocs/usermanual/component_reference.xml?rev=768083&r1=768082&r2=768083&view=diff
==============================================================================
--- jakarta/jmeter/trunk/xdocs/usermanual/component_reference.xml (original)
+++ jakarta/jmeter/trunk/xdocs/usermanual/component_reference.xml Thu Apr 23 
22:46:49 2009
@@ -1320,6 +1320,10 @@
 <p>
 The "Stop" action stops the thread or test after completing any samples that 
are in progress.
 The "Stop Now" action stops the test without waiting for samples to complete; 
it will interrupt any active samples.
+If some threads fail to stop within the 5 second time-limit, a message will be 
displayed in GUI mode.
+You can try using the Stop command to see if this will stop the threads, but 
if not, you should exit JMeter.
+In non-GUI mode, JMeter will exit if some threads fail to stop within the 5 
second time limit.
+[This can be changed using the JMeter property 
<code>jmeterengine.threadstop.wait</code>]
 </p>
 </description>
 <properties>

Modified: jakarta/jmeter/trunk/xdocs/usermanual/get-started.xml
URL: 
http://svn.apache.org/viewvc/jakarta/jmeter/trunk/xdocs/usermanual/get-started.xml?rev=768083&r1=768082&r2=768083&view=diff
==============================================================================
--- jakarta/jmeter/trunk/xdocs/usermanual/get-started.xml (original)
+++ jakarta/jmeter/trunk/xdocs/usermanual/get-started.xml Thu Apr 23 22:46:49 
2009
@@ -97,7 +97,7 @@
 </section>
 
 <section name="&sect-num;.2 Optional" anchor="optional">
-<p>If you plan on doing JMeter development or want to use Sun's Java Standard 
Extension packages, then you will need one or more optional packages listed 
below.</p>
+<p>If you plan on doing JMeter development, then you will need one or more 
optional packages listed below.</p>
 
 
 <subsection name="&sect-num;.2.1 Java Compiler" anchor="opt_compiler">
@@ -208,7 +208,7 @@
 </p>
 
 <p>
-The environment variable can be used to override settings in the jmeter.bat 
script.
+The environment variable JVM_ARGS can be used to override JVM settings in the 
jmeter.bat script.
 For example:
 <pre>
 set JVM_ARGS="-Xms1024m -Xmx1024m -Dpropname=propvalue"
@@ -217,8 +217,7 @@
 </p>
 
 <p>
-Un*x script files; should work on most Linux/Unix systems.
-The 
+Un*x script files; should work on most Linux/Unix systems:
 <ul>
 <li>jmeter - run JMeter (in GUI mode by default). Defines some JVM settings 
which may not work for all JVMs.</li>
 <li>jmeter-server - start JMeter in server mode (calls jmeter script with 
appropriate parameters)</li>
@@ -245,7 +244,7 @@
 </p>
 <p>Support jars (libraries etc) should be placed in the <b>lib</b> 
directory.</p>
 
-<p>If you don't want to put the extension jars in the <b>lib/ext</b> directory,
+<p>If you don't want to put JMeter extension jars in the <b>lib/ext</b> 
directory,
 then define the property <b>search_paths</b> in jmeter.properties.
 Do not use lib/ext for utility jars; it is only intended for JMeter components.
 </p>
@@ -343,7 +342,6 @@
        <p>If JMeter detects an error during a test, a message will be written 
to the log file. 
                The log file name is defined in the jmeter.properties file (or 
using the -j option, see below).
                It defaults to <b>jmeter.log</b>, and will be found in the 
directory from which JMeter was launched.
-               [in JMeter 2.2 and earlier, this was forced to be the JMeter 
bin directory.]
                </p>
                <p>
                JMeter versions after 2.2 added a new command-line option, -j 
jmeterlogfile. 



---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to