@@ -90,10 +90,10 @@ This way it should be widely applicable (applications, servlets, junit test
...
@@ -90,10 +90,10 @@ This way it should be widely applicable (applications, servlets, junit test
case, run from within an IDE or from anywhere else...).
case, run from within an IDE or from anywhere else...).
The integration with existing IDEs should be easy. In Eclipse for instance,
The integration with existing IDEs should be easy. In Eclipse for instance,
I've defined once, in the context of the "Run Configurations", a new "Variable"
you could define once, in the context of the "Run Configurations", a new "Variable"
named `COJAC` with the value `-javaagent:/path/to/cojac.jar="-Xf -Xs"`,
named `COJAC` with the value `-javaagent:/path/to/cojac.jar="-Xf -Xs"`,
then I just have to insert `{COJAC}` in the VM arguments to enable the tool
then you just have to insert `{COJAC}` in the VM arguments to enable the tool
with my favourite options in any run configurations.
with your favourite options in any run configurations.
## 1.3 - Links and notes
## 1.3 - Links and notes
COJAC is offered (without warranty of any kind) in the hope it can be useful
COJAC is offered (without warranty of any kind) in the hope it can be useful
...
@@ -154,8 +154,8 @@ COJAC offers a fine-grained configuration of what must be instrumented in the ap
...
@@ -154,8 +154,8 @@ COJAC offers a fine-grained configuration of what must be instrumented in the ap
By default, all detectors are activated.
By default, all detectors are activated.
COJAC instruments the code everywhere, except in classes from the standard library
COJAC instruments the code everywhere, except in classes from the standard library
(`java.*`), and possibly what has been requested to be skipped with one of the
(`java.*`, `javax.*`, ...), and possibly what has been requested to be skipped
mechanisms described below.
with one of the mechanisms described below.
### 2.2.1 - Excluding some code with -b option
### 2.2.1 - Excluding some code with -b option
...
@@ -197,7 +197,7 @@ You can choose the way COJAC will inform you when a problem occurs:
...
@@ -197,7 +197,7 @@ You can choose the way COJAC will inform you when a problem occurs:
*`-Se` Each problem will throw an `ArithmeticException`
*`-Se` Each problem will throw an `ArithmeticException`
*`-Sk methId` Each problem will invoke a method of your choice. The method must have that signature: `public static void f(String opcodeName)` and you have to provide its complete qualified path, in the format `pkgA/myPkg/myClass/myMethod`.
*`-Sk myMethod` Each problem will invoke a method of your choice. The method must have that signature: `public static void myMethod(String opcodeName)` and you have to provide its complete qualified path, in the format `pkgA/myPkg/myClass/myMethod`.
You can also configure what information COJAC will give you. Use the `-Sd`
You can also configure what information COJAC will give you. Use the `-Sd`
option to have the detailed stack trace for each warning. You can also use
option to have the detailed stack trace for each warning. You can also use
...
@@ -378,7 +378,7 @@ prompt> java HelloMrCojac
...
@@ -378,7 +378,7 @@ prompt> java HelloMrCojac
3.1415936535887745
3.1415936535887745
```
```
Now, let's compute with twice as much significant numbers:
Now, let's compute with twice as much significant digits: