question about maven build goals....

View: New views
12 Messages — Rating Filter:   Alert me  

question about maven build goals....

by Richard Schilling - Consultant :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

When I run the maven javadoc target from the API2 directory, I get the following error back

$ cd trunk\api2
$ maven javadoc

__  __
|  \/  |__ _Apache__ ___
| |\/| / _` \ V / -_) ' \  ~ intelligent projects ~
|_|  |_\__,_|\_/\___|_||_|  v. 1.1

Caught exception evaluating: basedir.substring(0, basedir.lastIndexOf('jdo')). Reason: java.lang.StringIndexOutOfBoundsException: String index out of range: -1
java.lang.StringIndexOutOfBoundsException: String index out of range: -1
        at java.lang.String.substring(String.java:1938)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at org.apache.commons.jexl.util.introspection.UberspectImpl$VelMethodImpl.invoke(UberspectImpl.java:231)
        at org.apache.commons.jexl.parser.ASTMethod.execute(ASTMethod.java:104)
        at org.apache.commons.jexl.parser.ASTReference.execute(ASTReference.java:82)


... add nausium

The javadoc target seems to run, however and generate javadoc items.

But, what causes this error exactly, and how do I avoid it?

Jira bug JDO 603 (https://issues.apache.org/jira/browse/JDO-603) suggests that a directory name has to contain the text "jdo".

The build documentation doesn't specify build instructions completely - something I'll be updating, BTW when I get this question answered ...

Thanks in advance.



Richard Schilling



Re: question about maven build goals....

by Craig L Russell :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Michelle added this test to the maven script recently.

Bottom line: you have to run from a directory that ends in "jdo" or  
stuff won't work.

But it sounds like the test should first check for basedir.lastIndex  
being negative 1 and not go ahead and try to create a substring...

Craig

On Oct 6, 2008, at 6:46 PM, Richard Schilling - Consultant wrote:

> When I run the maven javadoc target from the API2 directory, I get  
> the following error back
>
> $ cd trunk\api2
> $ maven javadoc
>
> __  __
> |  \/  |__ _Apache__ ___
> | |\/| / _` \ V / -_) ' \  ~ intelligent projects ~
> |_|  |_\__,_|\_/\___|_||_|  v. 1.1
>
> Caught exception evaluating: basedir.substring(0,  
> basedir.lastIndexOf('jdo')). Reason:  
> java.lang.StringIndexOutOfBoundsException: String index out of  
> range: -1
> java.lang.StringIndexOutOfBoundsException: String index out of  
> range: -1
>        at java.lang.String.substring(String.java:1938)
>        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>        at  
> sun
> .reflect
> .NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>        at  
> sun
> .reflect
> .DelegatingMethodAccessorImpl
> .invoke(DelegatingMethodAccessorImpl.java:25)
>        at java.lang.reflect.Method.invoke(Method.java:597)
>        at org.apache.commons.jexl.util.introspection.UberspectImpl
> $VelMethodImpl.invoke(UberspectImpl.java:231)
>        at  
> org.apache.commons.jexl.parser.ASTMethod.execute(ASTMethod.java:104)
>        at  
> org
> .apache.commons.jexl.parser.ASTReference.execute(ASTReference.java:82)
>
>
> ... add nausium
>
> The javadoc target seems to run, however and generate javadoc items.
>
> But, what causes this error exactly, and how do I avoid it?
>
> Jira bug JDO 603 (https://issues.apache.org/jira/browse/JDO-603)  
> suggests that a directory name has to contain the text "jdo".
>
> The build documentation doesn't specify build instructions  
> completely - something I'll be updating, BTW when I get this  
> question answered ...
>
> Thanks in advance.
>
>
>
> Richard Schilling
>
>
Craig L Russell
Architect, Sun Java Enterprise System http://db.apache.org/jdo
408 276-5638 mailto:Craig.Russell@...
P.S. A good JDO? O, Gasp!



smime.p7s (3K) Download Attachment

RE: question about maven build goals....

by Richard Schilling - Consultant :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Well that poses an interesting problem.  Or, perhaps I'm just confused at this point.  Both are equally possible :-)

The source tree of the project doesn't really have any directory paths that end in "jdo".  So, from where in the tree, exactly, do I run maven?

Even the instructions in README.html say to change to the tck directory before running "maven build".



Richard

-----Original Message-----
From: Craig.Russell@... [mailto:Craig.Russell@...]
Sent: Monday, October 06, 2008 7:15 PM
To: jdo-dev@...
Subject: Re: question about maven build goals....

Michelle added this test to the maven script recently.

Bottom line: you have to run from a directory that ends in "jdo" or
stuff won't work.

But it sounds like the test should first check for basedir.lastIndex
being negative 1 and not go ahead and try to create a substring...

Craig

On Oct 6, 2008, at 6:46 PM, Richard Schilling - Consultant wrote:

> When I run the maven javadoc target from the API2 directory, I get
> the following error back
>
> $ cd trunk\api2
> $ maven javadoc
>
> __  __
> |  \/  |__ _Apache__ ___
> | |\/| / _` \ V / -_) ' \  ~ intelligent projects ~
> |_|  |_\__,_|\_/\___|_||_|  v. 1.1
>
> Caught exception evaluating: basedir.substring(0,
> basedir.lastIndexOf('jdo')). Reason:
> java.lang.StringIndexOutOfBoundsException: String index out of
> range: -1
> java.lang.StringIndexOutOfBoundsException: String index out of
> range: -1
>        at java.lang.String.substring(String.java:1938)
>        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>        at
> sun
> .reflect
> .NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>        at
> sun
> .reflect
> .DelegatingMethodAccessorImpl
> .invoke(DelegatingMethodAccessorImpl.java:25)
>        at java.lang.reflect.Method.invoke(Method.java:597)
>        at org.apache.commons.jexl.util.introspection.UberspectImpl
> $VelMethodImpl.invoke(UberspectImpl.java:231)
>        at
> org.apache.commons.jexl.parser.ASTMethod.execute(ASTMethod.java:104)
>        at
> org
> .apache.commons.jexl.parser.ASTReference.execute(ASTReference.java:82)
>
>
> ... add nausium
>
> The javadoc target seems to run, however and generate javadoc items.
>
> But, what causes this error exactly, and how do I avoid it?
>
> Jira bug JDO 603 (https://issues.apache.org/jira/browse/JDO-603)
> suggests that a directory name has to contain the text "jdo".
>
> The build documentation doesn't specify build instructions
> completely - something I'll be updating, BTW when I get this
> question answered ...
>
> Thanks in advance.
>
>
>
> Richard Schilling
>
>

Craig L Russell
Architect, Sun Java Enterprise System http://db.apache.org/jdo
408 276-5638 mailto:Craig.Russell@...
P.S. A good JDO? O, Gasp!



RE: question about maven build goals....

by Richard Schilling - Consultant :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Or, I should say....

The source tree of the project doesn't really have any directory paths that end in "jdo" and also have maven build files in them....

Richard

-----Original Message-----
From: Richard Schilling - Consultant [mailto:w-richard@...]
Sent: Monday, October 06, 2008 7:30 PM
To: jdo-dev@...
Subject: RE: question about maven build goals....

Well that poses an interesting problem.  Or, perhaps I'm just confused at this point.  Both are equally possible :-)

The source tree of the project doesn't really have any directory paths that end in "jdo".  So, from where in the tree, exactly, do I run maven?

Even the instructions in README.html say to change to the tck directory before running "maven build".



Richard

-----Original Message-----
From: Craig.Russell@... [mailto:Craig.Russell@...]
Sent: Monday, October 06, 2008 7:15 PM
To: jdo-dev@...
Subject: Re: question about maven build goals....

Michelle added this test to the maven script recently.

Bottom line: you have to run from a directory that ends in "jdo" or
stuff won't work.

But it sounds like the test should first check for basedir.lastIndex
being negative 1 and not go ahead and try to create a substring...

Craig

On Oct 6, 2008, at 6:46 PM, Richard Schilling - Consultant wrote:

> When I run the maven javadoc target from the API2 directory, I get
> the following error back
>
> $ cd trunk\api2
> $ maven javadoc
>
> __  __
> |  \/  |__ _Apache__ ___
> | |\/| / _` \ V / -_) ' \  ~ intelligent projects ~
> |_|  |_\__,_|\_/\___|_||_|  v. 1.1
>
> Caught exception evaluating: basedir.substring(0,
> basedir.lastIndexOf('jdo')). Reason:
> java.lang.StringIndexOutOfBoundsException: String index out of
> range: -1
> java.lang.StringIndexOutOfBoundsException: String index out of
> range: -1
>        at java.lang.String.substring(String.java:1938)
>        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>        at
> sun
> .reflect
> .NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>        at
> sun
> .reflect
> .DelegatingMethodAccessorImpl
> .invoke(DelegatingMethodAccessorImpl.java:25)
>        at java.lang.reflect.Method.invoke(Method.java:597)
>        at org.apache.commons.jexl.util.introspection.UberspectImpl
> $VelMethodImpl.invoke(UberspectImpl.java:231)
>        at
> org.apache.commons.jexl.parser.ASTMethod.execute(ASTMethod.java:104)
>        at
> org
> .apache.commons.jexl.parser.ASTReference.execute(ASTReference.java:82)
>
>
> ... add nausium
>
> The javadoc target seems to run, however and generate javadoc items.
>
> But, what causes this error exactly, and how do I avoid it?
>
> Jira bug JDO 603 (https://issues.apache.org/jira/browse/JDO-603)
> suggests that a directory name has to contain the text "jdo".
>
> The build documentation doesn't specify build instructions
> completely - something I'll be updating, BTW when I get this
> question answered ...
>
> Thanks in advance.
>
>
>
> Richard Schilling
>
>

Craig L Russell
Architect, Sun Java Enterprise System http://db.apache.org/jdo
408 276-5638 mailto:Craig.Russell@...
P.S. A good JDO? O, Gasp!





Re: question about maven build goals....

by Craig L Russell :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

The source tree is rooted at svn... jdo/trunk/tck2.

The script goes up the tree looking for the thing above trunk (or if  
you're in a branch, the thing above branches). That directory has to  
be named xxxjdo.

Craig

On Oct 6, 2008, at 7:56 PM, Richard Schilling - Consultant wrote:

> Or, I should say....
>
> The source tree of the project doesn't really have any directory  
> paths that end in "jdo" and also have maven build files in them....
>
> Richard
>
> -----Original Message-----
> From: Richard Schilling - Consultant [mailto:w-richard@...]
> Sent: Monday, October 06, 2008 7:30 PM
> To: jdo-dev@...
> Subject: RE: question about maven build goals....
>
> Well that poses an interesting problem.  Or, perhaps I'm just  
> confused at this point.  Both are equally possible :-)
>
> The source tree of the project doesn't really have any directory  
> paths that end in "jdo".  So, from where in the tree, exactly, do I  
> run maven?
>
> Even the instructions in README.html say to change to the tck  
> directory before running "maven build".
>
>
>
> Richard
>
> -----Original Message-----
> From: Craig.Russell@... [mailto:Craig.Russell@...]
> Sent: Monday, October 06, 2008 7:15 PM
> To: jdo-dev@...
> Subject: Re: question about maven build goals....
>
> Michelle added this test to the maven script recently.
>
> Bottom line: you have to run from a directory that ends in "jdo" or
> stuff won't work.
>
> But it sounds like the test should first check for basedir.lastIndex
> being negative 1 and not go ahead and try to create a substring...
>
> Craig
>
> On Oct 6, 2008, at 6:46 PM, Richard Schilling - Consultant wrote:
>
>> When I run the maven javadoc target from the API2 directory, I get
>> the following error back
>>
>> $ cd trunk\api2
>> $ maven javadoc
>>
>> __  __
>> |  \/  |__ _Apache__ ___
>> | |\/| / _` \ V / -_) ' \  ~ intelligent projects ~
>> |_|  |_\__,_|\_/\___|_||_|  v. 1.1
>>
>> Caught exception evaluating: basedir.substring(0,
>> basedir.lastIndexOf('jdo')). Reason:
>> java.lang.StringIndexOutOfBoundsException: String index out of
>> range: -1
>> java.lang.StringIndexOutOfBoundsException: String index out of
>> range: -1
>>       at java.lang.String.substring(String.java:1938)
>>       at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>       at
>> sun
>> .reflect
>> .NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>>       at
>> sun
>> .reflect
>> .DelegatingMethodAccessorImpl
>> .invoke(DelegatingMethodAccessorImpl.java:25)
>>       at java.lang.reflect.Method.invoke(Method.java:597)
>>       at org.apache.commons.jexl.util.introspection.UberspectImpl
>> $VelMethodImpl.invoke(UberspectImpl.java:231)
>>       at
>> org.apache.commons.jexl.parser.ASTMethod.execute(ASTMethod.java:104)
>>       at
>> org
>> .apache.commons.jexl.parser.ASTReference.execute(ASTReference.java:
>> 82)
>>
>>
>> ... add nausium
>>
>> The javadoc target seems to run, however and generate javadoc items.
>>
>> But, what causes this error exactly, and how do I avoid it?
>>
>> Jira bug JDO 603 (https://issues.apache.org/jira/browse/JDO-603)
>> suggests that a directory name has to contain the text "jdo".
>>
>> The build documentation doesn't specify build instructions
>> completely - something I'll be updating, BTW when I get this
>> question answered ...
>>
>> Thanks in advance.
>>
>>
>>
>> Richard Schilling
>>
>>
>
> Craig L Russell
> Architect, Sun Java Enterprise System http://db.apache.org/jdo
> 408 276-5638 mailto:Craig.Russell@...
> P.S. A good JDO? O, Gasp!
>
>
>
>
Craig L Russell
Architect, Sun Java Enterprise System http://db.apache.org/jdo
408 276-5638 mailto:Craig.Russell@...
P.S. A good JDO? O, Gasp!



smime.p7s (3K) Download Attachment

RE: question about maven build goals....

by Richard Schilling - Consultant :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

O.K. That makes more sense.  However, I am executing maven from the directory structure you suggest, and still get that error.  My specific directory is:

jdo/trunk/api2



Richard
-----Original Message-----
From: Craig.Russell@... [mailto:Craig.Russell@...]
Sent: Monday, October 06, 2008 8:00 PM
To: jdo-dev@...
Subject: Re: question about maven build goals....

The source tree is rooted at svn... jdo/trunk/tck2.

The script goes up the tree looking for the thing above trunk (or if
you're in a branch, the thing above branches). That directory has to
be named xxxjdo.

Craig

On Oct 6, 2008, at 7:56 PM, Richard Schilling - Consultant wrote:

> Or, I should say....
>
> The source tree of the project doesn't really have any directory
> paths that end in "jdo" and also have maven build files in them....
>
> Richard
>
> -----Original Message-----
> From: Richard Schilling - Consultant [mailto:w-richard@...]
> Sent: Monday, October 06, 2008 7:30 PM
> To: jdo-dev@...
> Subject: RE: question about maven build goals....
>
> Well that poses an interesting problem.  Or, perhaps I'm just
> confused at this point.  Both are equally possible :-)
>
> The source tree of the project doesn't really have any directory
> paths that end in "jdo".  So, from where in the tree, exactly, do I
> run maven?
>
> Even the instructions in README.html say to change to the tck
> directory before running "maven build".
>
>
>
> Richard
>
> -----Original Message-----
> From: Craig.Russell@... [mailto:Craig.Russell@...]
> Sent: Monday, October 06, 2008 7:15 PM
> To: jdo-dev@...
> Subject: Re: question about maven build goals....
>
> Michelle added this test to the maven script recently.
>
> Bottom line: you have to run from a directory that ends in "jdo" or
> stuff won't work.
>
> But it sounds like the test should first check for basedir.lastIndex
> being negative 1 and not go ahead and try to create a substring...
>
> Craig
>
> On Oct 6, 2008, at 6:46 PM, Richard Schilling - Consultant wrote:
>
>> When I run the maven javadoc target from the API2 directory, I get
>> the following error back
>>
>> $ cd trunk\api2
>> $ maven javadoc
>>
>> __  __
>> |  \/  |__ _Apache__ ___
>> | |\/| / _` \ V / -_) ' \  ~ intelligent projects ~
>> |_|  |_\__,_|\_/\___|_||_|  v. 1.1
>>
>> Caught exception evaluating: basedir.substring(0,
>> basedir.lastIndexOf('jdo')). Reason:
>> java.lang.StringIndexOutOfBoundsException: String index out of
>> range: -1
>> java.lang.StringIndexOutOfBoundsException: String index out of
>> range: -1
>>       at java.lang.String.substring(String.java:1938)
>>       at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>       at
>> sun
>> .reflect
>> .NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>>       at
>> sun
>> .reflect
>> .DelegatingMethodAccessorImpl
>> .invoke(DelegatingMethodAccessorImpl.java:25)
>>       at java.lang.reflect.Method.invoke(Method.java:597)
>>       at org.apache.commons.jexl.util.introspection.UberspectImpl
>> $VelMethodImpl.invoke(UberspectImpl.java:231)
>>       at
>> org.apache.commons.jexl.parser.ASTMethod.execute(ASTMethod.java:104)
>>       at
>> org
>> .apache.commons.jexl.parser.ASTReference.execute(ASTReference.java:
>> 82)
>>
>>
>> ... add nausium
>>
>> The javadoc target seems to run, however and generate javadoc items.
>>
>> But, what causes this error exactly, and how do I avoid it?
>>
>> Jira bug JDO 603 (https://issues.apache.org/jira/browse/JDO-603)
>> suggests that a directory name has to contain the text "jdo".
>>
>> The build documentation doesn't specify build instructions
>> completely - something I'll be updating, BTW when I get this
>> question answered ...
>>
>> Thanks in advance.
>>
>>
>>
>> Richard Schilling
>>
>>
>
> Craig L Russell
> Architect, Sun Java Enterprise System http://db.apache.org/jdo
> 408 276-5638 mailto:Craig.Russell@...
> P.S. A good JDO? O, Gasp!
>
>
>
>

Craig L Russell
Architect, Sun Java Enterprise System http://db.apache.org/jdo
408 276-5638 mailto:Craig.Russell@...
P.S. A good JDO? O, Gasp!



Re: question about maven build goals....

by Michael Bouschen-3 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hi Richard,

I'm surprised you see this error when running 'maven javadoc'. What I
recall is that this check for the directory name is done when running a
distribution (e.g. maven dist).

I could run maven javadoc in api2 w/o any problems. Even after renaming
the root directory jdo to a different name it still works. You might
want to run maven in debug mode 'maven -X javadoc' and see whether this
gives some useful information. Attention: the output is very verbose :-).

Regards Michael

> O.K. That makes more sense.  However, I am executing maven from the directory structure you suggest, and still get that error.  My specific directory is:
>
> jdo/trunk/api2
>
>
>
> Richard
> -----Original Message-----
> From: Craig.Russell@... [mailto:Craig.Russell@...]
> Sent: Monday, October 06, 2008 8:00 PM
> To: jdo-dev@...
> Subject: Re: question about maven build goals....
>
> The source tree is rooted at svn... jdo/trunk/tck2.
>
> The script goes up the tree looking for the thing above trunk (or if
> you're in a branch, the thing above branches). That directory has to
> be named xxxjdo.
>
> Craig
>
> On Oct 6, 2008, at 7:56 PM, Richard Schilling - Consultant wrote:
>
>  
>> Or, I should say....
>>
>> The source tree of the project doesn't really have any directory
>> paths that end in "jdo" and also have maven build files in them....
>>
>> Richard
>>
>> -----Original Message-----
>> From: Richard Schilling - Consultant [mailto:w-richard@...]
>> Sent: Monday, October 06, 2008 7:30 PM
>> To: jdo-dev@...
>> Subject: RE: question about maven build goals....
>>
>> Well that poses an interesting problem.  Or, perhaps I'm just
>> confused at this point.  Both are equally possible :-)
>>
>> The source tree of the project doesn't really have any directory
>> paths that end in "jdo".  So, from where in the tree, exactly, do I
>> run maven?
>>
>> Even the instructions in README.html say to change to the tck
>> directory before running "maven build".
>>
>>
>>
>> Richard
>>
>> -----Original Message-----
>> From: Craig.Russell@... [mailto:Craig.Russell@...]
>> Sent: Monday, October 06, 2008 7:15 PM
>> To: jdo-dev@...
>> Subject: Re: question about maven build goals....
>>
>> Michelle added this test to the maven script recently.
>>
>> Bottom line: you have to run from a directory that ends in "jdo" or
>> stuff won't work.
>>
>> But it sounds like the test should first check for basedir.lastIndex
>> being negative 1 and not go ahead and try to create a substring...
>>
>> Craig
>>
>> On Oct 6, 2008, at 6:46 PM, Richard Schilling - Consultant wrote:
>>
>>    
>>> When I run the maven javadoc target from the API2 directory, I get
>>> the following error back
>>>
>>> $ cd trunk\api2
>>> $ maven javadoc
>>>
>>> __  __
>>> |  \/  |__ _Apache__ ___
>>> | |\/| / _` \ V / -_) ' \  ~ intelligent projects ~
>>> |_|  |_\__,_|\_/\___|_||_|  v. 1.1
>>>
>>> Caught exception evaluating: basedir.substring(0,
>>> basedir.lastIndexOf('jdo')). Reason:
>>> java.lang.StringIndexOutOfBoundsException: String index out of
>>> range: -1
>>> java.lang.StringIndexOutOfBoundsException: String index out of
>>> range: -1
>>>       at java.lang.String.substring(String.java:1938)
>>>       at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>>       at
>>> sun
>>> .reflect
>>> .NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>>>       at
>>> sun
>>> .reflect
>>> .DelegatingMethodAccessorImpl
>>> .invoke(DelegatingMethodAccessorImpl.java:25)
>>>       at java.lang.reflect.Method.invoke(Method.java:597)
>>>       at org.apache.commons.jexl.util.introspection.UberspectImpl
>>> $VelMethodImpl.invoke(UberspectImpl.java:231)
>>>       at
>>> org.apache.commons.jexl.parser.ASTMethod.execute(ASTMethod.java:104)
>>>       at
>>> org
>>> .apache.commons.jexl.parser.ASTReference.execute(ASTReference.java:
>>> 82)
>>>
>>>
>>> ... add nausium
>>>
>>> The javadoc target seems to run, however and generate javadoc items.
>>>
>>> But, what causes this error exactly, and how do I avoid it?
>>>
>>> Jira bug JDO 603 (https://issues.apache.org/jira/browse/JDO-603)
>>> suggests that a directory name has to contain the text "jdo".
>>>
>>> The build documentation doesn't specify build instructions
>>> completely - something I'll be updating, BTW when I get this
>>> question answered ...
>>>
>>> Thanks in advance.
>>>
>>>
>>>
>>> Richard Schilling
>>>
>>>
>>>      
>> Craig L Russell
>> Architect, Sun Java Enterprise System http://db.apache.org/jdo
>> 408 276-5638 mailto:Craig.Russell@...
>> P.S. A good JDO? O, Gasp!
>>
>>
>>
>>
>>    
>
> Craig L Russell
> Architect, Sun Java Enterprise System http://db.apache.org/jdo
> 408 276-5638 mailto:Craig.Russell@...
> P.S. A good JDO? O, Gasp!
>
>
>  


--
*Michael Bouschen*
*Prokurist*

akquinet tech@spree GmbH
Tempelhofer Ufer 23-24, D-10963 Berlin
Bülowstr. 66, D-10783 Berlin

Fon:   +49 30 235 520-33
Fax:   +49 30 217 520-12
Email: michael.bouschen@...
Url:    www.akquinet.de <http://www.akquinet.de>

akquinet tech@spree GmbH, Berlin
Geschäftsführung: Prof. Dr. Christian Roth, Hendrik Saly, Martin Weber
Amtsgericht Berlin-Charlottenburg HRB 86780
USt.-Id. Nr.: DE 225 964 680

Re: question about maven build goals....

by Michael Bouschen-2 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hi Richard,

I'm surprised you see this error when running 'maven javadoc'. What I
recall is that this check for the directory name is done when running a
distribution (e.g. maven dist).

I could run maven javadoc in api2 w/o any problems. Even after renaming
the root directory jdo to a different name it still works. You might
want to run maven in debug mode 'maven -X javadoc' and see whether this
gives some useful information. Attention: the output is very verbose :-).

Regards Michael

> O.K. That makes more sense.  However, I am executing maven from the directory structure you suggest, and still get that error.  My specific directory is:
>
> jdo/trunk/api2
>
>
>
> Richard
> -----Original Message-----
> From: Craig.Russell@... [mailto:Craig.Russell@...]
> Sent: Monday, October 06, 2008 8:00 PM
> To: jdo-dev@...
> Subject: Re: question about maven build goals....
>
> The source tree is rooted at svn... jdo/trunk/tck2.
>
> The script goes up the tree looking for the thing above trunk (or if
> you're in a branch, the thing above branches). That directory has to
> be named xxxjdo.
>
> Craig
>
> On Oct 6, 2008, at 7:56 PM, Richard Schilling - Consultant wrote:
>
>  
>> Or, I should say....
>>
>> The source tree of the project doesn't really have any directory
>> paths that end in "jdo" and also have maven build files in them....
>>
>> Richard
>>
>> -----Original Message-----
>> From: Richard Schilling - Consultant [mailto:w-richard@...]
>> Sent: Monday, October 06, 2008 7:30 PM
>> To: jdo-dev@...
>> Subject: RE: question about maven build goals....
>>
>> Well that poses an interesting problem.  Or, perhaps I'm just
>> confused at this point.  Both are equally possible :-)
>>
>> The source tree of the project doesn't really have any directory
>> paths that end in "jdo".  So, from where in the tree, exactly, do I
>> run maven?
>>
>> Even the instructions in README.html say to change to the tck
>> directory before running "maven build".
>>
>>
>>
>> Richard
>>
>> -----Original Message-----
>> From: Craig.Russell@... [mailto:Craig.Russell@...]
>> Sent: Monday, October 06, 2008 7:15 PM
>> To: jdo-dev@...
>> Subject: Re: question about maven build goals....
>>
>> Michelle added this test to the maven script recently.
>>
>> Bottom line: you have to run from a directory that ends in "jdo" or
>> stuff won't work.
>>
>> But it sounds like the test should first check for basedir.lastIndex
>> being negative 1 and not go ahead and try to create a substring...
>>
>> Craig
>>
>> On Oct 6, 2008, at 6:46 PM, Richard Schilling - Consultant wrote:
>>
>>    
>>> When I run the maven javadoc target from the API2 directory, I get
>>> the following error back
>>>
>>> $ cd trunk\api2
>>> $ maven javadoc
>>>
>>> __  __
>>> |  \/  |__ _Apache__ ___
>>> | |\/| / _` \ V / -_) ' \  ~ intelligent projects ~
>>> |_|  |_\__,_|\_/\___|_||_|  v. 1.1
>>>
>>> Caught exception evaluating: basedir.substring(0,
>>> basedir.lastIndexOf('jdo')). Reason:
>>> java.lang.StringIndexOutOfBoundsException: String index out of
>>> range: -1
>>> java.lang.StringIndexOutOfBoundsException: String index out of
>>> range: -1
>>>       at java.lang.String.substring(String.java:1938)
>>>       at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>>       at
>>> sun
>>> .reflect
>>> .NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>>>       at
>>> sun
>>> .reflect
>>> .DelegatingMethodAccessorImpl
>>> .invoke(DelegatingMethodAccessorImpl.java:25)
>>>       at java.lang.reflect.Method.invoke(Method.java:597)
>>>       at org.apache.commons.jexl.util.introspection.UberspectImpl
>>> $VelMethodImpl.invoke(UberspectImpl.java:231)
>>>       at
>>> org.apache.commons.jexl.parser.ASTMethod.execute(ASTMethod.java:104)
>>>       at
>>> org
>>> .apache.commons.jexl.parser.ASTReference.execute(ASTReference.java:
>>> 82)
>>>
>>>
>>> ... add nausium
>>>
>>> The javadoc target seems to run, however and generate javadoc items.
>>>
>>> But, what causes this error exactly, and how do I avoid it?
>>>
>>> Jira bug JDO 603 (https://issues.apache.org/jira/browse/JDO-603)
>>> suggests that a directory name has to contain the text "jdo".
>>>
>>> The build documentation doesn't specify build instructions
>>> completely - something I'll be updating, BTW when I get this
>>> question answered ...
>>>
>>> Thanks in advance.
>>>
>>>
>>>
>>> Richard Schilling
>>>
>>>
>>>      
>> Craig L Russell
>> Architect, Sun Java Enterprise System http://db.apache.org/jdo
>> 408 276-5638 mailto:Craig.Russell@...
>> P.S. A good JDO? O, Gasp!
>>
>>
>>
>>
>>    
>
> Craig L Russell
> Architect, Sun Java Enterprise System http://db.apache.org/jdo
> 408 276-5638 mailto:Craig.Russell@...
> P.S. A good JDO? O, Gasp!
>
>
>  


--
*Michael Bouschen*
*Prokurist*

akquinet tech@spree GmbH
Tempelhofer Ufer 23-24, D-10963 Berlin
Bülowstr. 66, D-10783 Berlin

Fon:   +49 30 235 520-33
Fax:   +49 30 217 520-12
Email: michael.bouschen@...
Url:    www.akquinet.de <http://www.akquinet.de>

akquinet tech@spree GmbH, Berlin
Geschäftsführung: Prof. Dr. Christian Roth, Hendrik Saly, Martin Weber
Amtsgericht Berlin-Charlottenburg HRB 86780
USt.-Id. Nr.: DE 225 964 680

Re: question about maven build goals....

by Michelle Caisse :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hi Richard,

I also don't see this error message when running maven javadoc from
trunk/api2.  The variables that use the assignment that is producing
this error only occur in the top-level maven.xml in trunk, not the one
in api2. So it's hard to see how you would get this from api2.

-- Michelle

Richard Schilling - Consultant wrote:

>When I run the maven javadoc target from the API2 directory, I get the following error back
>
>$ cd trunk\api2
>$ maven javadoc
>
>__  __
>|  \/  |__ _Apache__ ___
>| |\/| / _` \ V / -_) ' \  ~ intelligent projects ~
>|_|  |_\__,_|\_/\___|_||_|  v. 1.1
>
>Caught exception evaluating: basedir.substring(0, basedir.lastIndexOf('jdo')). Reason: java.lang.StringIndexOutOfBoundsException: String index out of range: -1
>java.lang.StringIndexOutOfBoundsException: String index out of range: -1
>        at java.lang.String.substring(String.java:1938)
>        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>        at java.lang.reflect.Method.invoke(Method.java:597)
>        at org.apache.commons.jexl.util.introspection.UberspectImpl$VelMethodImpl.invoke(UberspectImpl.java:231)
>        at org.apache.commons.jexl.parser.ASTMethod.execute(ASTMethod.java:104)
>        at org.apache.commons.jexl.parser.ASTReference.execute(ASTReference.java:82)
>
>
>... add nausium
>
>The javadoc target seems to run, however and generate javadoc items.
>
>But, what causes this error exactly, and how do I avoid it?
>
>Jira bug JDO 603 (https://issues.apache.org/jira/browse/JDO-603) suggests that a directory name has to contain the text "jdo".
>
>The build documentation doesn't specify build instructions completely - something I'll be updating, BTW when I get this question answered ...
>
>Thanks in advance.
>
>
>
>Richard Schilling
>
>
>
>  
>

RE: question about maven build goals....

by Richard Schilling - Consultant :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

I know it's odd, and I don't have any specific steps unfortunately that might allow you to reproduce the error.  But, here is what I am doing (and the output):




c:\>s:
s:\>cd jdo\trunk\api2
s:\jdo\trunk\api2>maven javadoc



 __  __
|  \/  |__ _Apache__ ___
| |\/| / _` \ V / -_) ' \  ~ intelligent projects ~
|_|  |_\__,_|\_/\___|_||_|  v. 1.1

Caught exception evaluating: basedir.substring(0, basedir.lastIndexOf('jdo')). Reason: java.lang.StringIndexOutOfBoundsException: String index out of range: -1
java.lang.StringIndexOutOfBoundsException: String index out of range: -1
        at java.lang.String.substring(String.java:1938)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at org.apache.commons.jexl.util.introspection.UberspectImpl$VelMethodImpl.invoke(UberspectImpl.java:231)
        at org.apache.commons.jexl.parser.ASTMethod.execute(ASTMethod.java:104)
        at org.apache.commons.jexl.parser.ASTReference.execute(ASTReference.java:82)
        at org.apache.commons.jexl.parser.ASTReference.value(ASTReference.java:56)
        at org.apache.commons.jexl.parser.ASTReferenceExpression.value(ASTReferenceExpression.java:50)
        at org.apache.commons.jexl.ExpressionImpl.evaluate(ExpressionImpl.java:79)
        at org.apache.commons.jelly.expression.jexl.JexlExpression.evaluate(JexlExpression.java:69)
        at org.apache.commons.jelly.expression.ExpressionSupport.evaluateRecurse(ExpressionSupport.java:61)
        at org.apache.commons.jelly.expression.ExpressionSupport.evaluateAsString(ExpressionSupport.java:46)
        at org.apache.commons.jelly.expression.CompositeExpression.evaluateAsString(CompositeExpression.java:256)
        at org.apache.commons.jelly.expression.CompositeExpression.evaluate(CompositeExpression.java:248)
        at org.apache.maven.jelly.MavenJellyContext.getVariable(MavenJellyContext.java:202)
        at org.apache.commons.jelly.expression.jexl.JellyMap.get(JexlExpression.java:112)
        at org.apache.commons.jexl.parser.ASTReference.execute(ASTReference.java:88)
        at org.apache.commons.jexl.parser.ASTReference.value(ASTReference.java:56)
        at org.apache.commons.jexl.parser.ASTReferenceExpression.value(ASTReferenceExpression.java:50)
        at org.apache.commons.jexl.ExpressionImpl.evaluate(ExpressionImpl.java:79)
        at org.apache.commons.jelly.expression.jexl.JexlExpression.evaluate(JexlExpression.java:69)
        at org.apache.commons.jelly.expression.jexl.JexlExpressionFactory$ExpressionSupportLocal.evaluate(JexlExpressionFactory.java:122)
        at org.apache.commons.jelly.expression.ExpressionSupport.evaluateRecurse(ExpressionSupport.java:61)
        at org.apache.commons.jelly.expression.ExpressionSupport.evaluateAsString(ExpressionSupport.java:46)
        at org.apache.commons.jelly.expression.CompositeExpression.evaluateAsString(CompositeExpression.java:256)
        at org.apache.commons.jelly.expression.CompositeExpression.evaluate(CompositeExpression.java:248)
        at org.apache.maven.jelly.MavenJellyContext.getVariable(MavenJellyContext.java:202)
        at org.apache.commons.jelly.tags.ant.JellyPropsHandler.getProperty(JellyPropsHandler.java:63)
        at org.apache.commons.jelly.tags.ant.JellyPropsHandler.getProperties(JellyPropsHandler.java:87)
        at org.apache.commons.jelly.tags.ant.GrantProject.getProperties(GrantProject.java:170)
        at org.apache.commons.jelly.tags.ant.GrantProject.replaceProperties(GrantProject.java:102)
        at org.apache.tools.ant.taskdefs.Echo.addText(Echo.java:102)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at org.apache.commons.jelly.tags.ant.AntTag.doTag(AntTag.java:172)
        at org.apache.commons.jelly.impl.TagScript.run(TagScript.java:250)
        at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)
        at org.apache.commons.jelly.TagSupport.invokeBody(TagSupport.java:186)
        at org.apache.commons.jelly.tags.core.IfTag.doTag(IfTag.java:42)
        at org.apache.commons.jelly.impl.TagScript.run(TagScript.java:250)
        at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)
        at org.apache.maven.jelly.tags.werkz.MavenGoalTag.runBodyTag(MavenGoalTag.java:83)
        at org.apache.maven.jelly.tags.werkz.MavenGoalTag$MavenGoalAction.performAction(MavenGoalTag.java:116)
        at org.apache.maven.werkz.Goal.fire(Goal.java:691)
        at org.apache.maven.werkz.Goal.attain(Goal.java:623)
        at org.apache.maven.werkz.Goal.attainPrecursors(Goal.java:526)
        at org.apache.maven.werkz.Goal.attain(Goal.java:621)
        at org.apache.maven.werkz.Goal.attainPrecursors(Goal.java:526)
        at org.apache.maven.werkz.Goal.attain(Goal.java:621)
        at org.apache.maven.werkz.Goal.attainPrecursors(Goal.java:526)
        at org.apache.maven.werkz.Goal.attain(Goal.java:621)
        at org.apache.maven.plugin.PluginManager.attainGoals(PluginManager.java:712)
        at org.apache.maven.MavenSession.attainGoals(MavenSession.java:265)
        at org.apache.maven.cli.App.doMain(App.java:307)
        at org.apache.maven.cli.App.main(App.java:217)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at com.werken.forehead.Forehead.run(Forehead.java:551)
        at com.werken.forehead.Forehead.main(Forehead.java:581)
Caught exception evaluating: basedir.substring(0, basedir.lastIndexOf('jdo')). Reason: java.lang.StringIndexOutOfBoundsException: String index out of range: -1
java.lang.StringIndexOutOfBoundsException: String index out of range: -1
        at java.lang.String.substring(String.java:1938)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at org.apache.commons.jexl.util.introspection.UberspectImpl$VelMethodImpl.invoke(UberspectImpl.java:231)
        at org.apache.commons.jexl.parser.ASTMethod.execute(ASTMethod.java:104)
        at org.apache.commons.jexl.parser.ASTReference.execute(ASTReference.java:82)
        at org.apache.commons.jexl.parser.ASTReference.value(ASTReference.java:56)
        at org.apache.commons.jexl.parser.ASTReferenceExpression.value(ASTReferenceExpression.java:50)
        at org.apache.commons.jexl.ExpressionImpl.evaluate(ExpressionImpl.java:79)
        at org.apache.commons.jelly.expression.jexl.JexlExpression.evaluate(JexlExpression.java:69)
        at org.apache.commons.jelly.expression.ExpressionSupport.evaluateRecurse(ExpressionSupport.java:61)
        at org.apache.commons.jelly.expression.ExpressionSupport.evaluateAsString(ExpressionSupport.java:46)
        at org.apache.commons.jelly.expression.CompositeExpression.evaluateAsString(CompositeExpression.java:256)
        at org.apache.commons.jelly.expression.CompositeExpression.evaluate(CompositeExpression.java:248)
        at org.apache.maven.jelly.MavenJellyContext.getVariable(MavenJellyContext.java:202)
        at org.apache.commons.jelly.tags.ant.JellyPropsHandler.getProperty(JellyPropsHandler.java:63)
        at org.apache.commons.jelly.tags.ant.JellyPropsHandler.getProperties(JellyPropsHandler.java:87)
        at org.apache.commons.jelly.tags.ant.GrantProject.getProperties(GrantProject.java:170)
        at org.apache.commons.jelly.tags.ant.GrantProject.replaceProperties(GrantProject.java:102)
        at org.apache.tools.ant.taskdefs.Echo.addText(Echo.java:102)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at org.apache.commons.jelly.tags.ant.AntTag.doTag(AntTag.java:172)
        at org.apache.commons.jelly.impl.TagScript.run(TagScript.java:250)
        at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)
        at org.apache.commons.jelly.TagSupport.invokeBody(TagSupport.java:186)
        at org.apache.commons.jelly.tags.core.IfTag.doTag(IfTag.java:42)
        at org.apache.commons.jelly.impl.TagScript.run(TagScript.java:250)
        at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)
        at org.apache.maven.jelly.tags.werkz.MavenGoalTag.runBodyTag(MavenGoalTag.java:83)
        at org.apache.maven.jelly.tags.werkz.MavenGoalTag$MavenGoalAction.performAction(MavenGoalTag.java:116)
        at org.apache.maven.werkz.Goal.fire(Goal.java:691)
        at org.apache.maven.werkz.Goal.attain(Goal.java:623)
        at org.apache.maven.werkz.Goal.attainPrecursors(Goal.java:526)
        at org.apache.maven.werkz.Goal.attain(Goal.java:621)
        at org.apache.maven.werkz.Goal.attainPrecursors(Goal.java:526)
        at org.apache.maven.werkz.Goal.attain(Goal.java:621)
        at org.apache.maven.werkz.Goal.attainPrecursors(Goal.java:526)
        at org.apache.maven.werkz.Goal.attain(Goal.java:621)
        at org.apache.maven.plugin.PluginManager.attainGoals(PluginManager.java:712)
        at org.apache.maven.MavenSession.attainGoals(MavenSession.java:265)
        at org.apache.maven.cli.App.doMain(App.java:307)
        at org.apache.maven.cli.App.main(App.java:217)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at com.werken.forehead.Forehead.run(Forehead.java:551)
        at com.werken.forehead.Forehead.main(Forehead.java:581)
build:start:

xdoc:init-i18n:
    [echo] Init the i18n support

xdoc:init:
Caught exception evaluating: basedir.substring(0, basedir.lastIndexOf('jdo')). Reason: java.lang.StringIndexOutOfBoundsException: String index out of range: -1
java.lang.StringIndexOutOfBoundsException: String index out of range: -1
        at java.lang.String.substring(String.java:1938)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at org.apache.commons.jexl.util.introspection.UberspectImpl$VelMethodImpl.invoke(UberspectImpl.java:231)
        at org.apache.commons.jexl.parser.ASTMethod.execute(ASTMethod.java:104)
        at org.apache.commons.jexl.parser.ASTReference.execute(ASTReference.java:82)
        at org.apache.commons.jexl.parser.ASTReference.value(ASTReference.java:56)
        at org.apache.commons.jexl.parser.ASTReferenceExpression.value(ASTReferenceExpression.java:50)
        at org.apache.commons.jexl.ExpressionImpl.evaluate(ExpressionImpl.java:79)
        at org.apache.commons.jelly.expression.jexl.JexlExpression.evaluate(JexlExpression.java:69)
        at org.apache.commons.jelly.expression.ExpressionSupport.evaluateRecurse(ExpressionSupport.java:61)
        at org.apache.commons.jelly.expression.ExpressionSupport.evaluateAsString(ExpressionSupport.java:46)
        at org.apache.commons.jelly.expression.CompositeExpression.evaluateAsString(CompositeExpression.java:256)
        at org.apache.commons.jelly.expression.CompositeExpression.evaluate(CompositeExpression.java:248)
        at org.apache.maven.jelly.MavenJellyContext.getVariable(MavenJellyContext.java:202)
        at org.apache.commons.jelly.expression.jexl.JellyMap.get(JexlExpression.java:112)
        at org.apache.commons.jexl.parser.ASTReference.execute(ASTReference.java:88)
        at org.apache.commons.jexl.parser.ASTReference.value(ASTReference.java:56)
        at org.apache.commons.jexl.parser.ASTReferenceExpression.value(ASTReferenceExpression.java:50)
        at org.apache.commons.jexl.ExpressionImpl.evaluate(ExpressionImpl.java:79)
        at org.apache.commons.jelly.expression.jexl.JexlExpression.evaluate(JexlExpression.java:69)
        at org.apache.commons.jelly.expression.jexl.JexlExpressionFactory$ExpressionSupportLocal.evaluate(JexlExpressionFactory.java:122)
        at org.apache.commons.jelly.expression.ExpressionSupport.evaluateRecurse(ExpressionSupport.java:61)
        at org.apache.commons.jelly.expression.ExpressionSupport.evaluateAsString(ExpressionSupport.java:46)
        at org.apache.commons.jelly.expression.CompositeExpression.evaluateAsString(CompositeExpression.java:256)
        at org.apache.commons.jelly.expression.CompositeExpression.evaluate(CompositeExpression.java:248)
        at org.apache.maven.jelly.MavenJellyContext.getVariable(MavenJellyContext.java:202)
        at org.apache.commons.jelly.tags.ant.JellyPropsHandler.getProperty(JellyPropsHandler.java:63)
        at org.apache.commons.jelly.tags.ant.JellyPropsHandler.getProperties(JellyPropsHandler.java:87)
        at org.apache.commons.jelly.tags.ant.GrantProject.getProperties(GrantProject.java:170)
        at org.apache.commons.jelly.tags.ant.GrantProject.replaceProperties(GrantProject.java:102)
        at org.apache.tools.ant.taskdefs.Echo.addText(Echo.java:102)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at org.apache.commons.jelly.tags.ant.AntTag.doTag(AntTag.java:172)
        at org.apache.commons.jelly.impl.TagScript.run(TagScript.java:250)
        at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)
        at org.apache.maven.jelly.tags.werkz.MavenGoalTag.runBodyTag(MavenGoalTag.java:83)
        at org.apache.maven.jelly.tags.werkz.MavenGoalTag$MavenGoalAction.performAction(MavenGoalTag.java:116)
        at org.apache.maven.werkz.Goal.fire(Goal.java:691)
        at org.apache.maven.werkz.Goal.attain(Goal.java:623)
        at org.apache.maven.werkz.Goal.attainPrecursors(Goal.java:526)
        at org.apache.maven.werkz.Goal.attain(Goal.java:621)
        at org.apache.maven.werkz.Goal.attainPrecursors(Goal.java:526)
        at org.apache.maven.werkz.Goal.attain(Goal.java:621)
        at org.apache.maven.plugin.PluginManager.attainGoals(PluginManager.java:712)
        at org.apache.maven.MavenSession.attainGoals(MavenSession.java:265)
        at org.apache.maven.cli.App.doMain(App.java:307)
        at org.apache.maven.cli.App.main(App.java:217)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at com.werken.forehead.Forehead.run(Forehead.java:551)
        at com.werken.forehead.Forehead.main(Forehead.java:581)
Caught exception evaluating: basedir.substring(0, basedir.lastIndexOf('jdo')). Reason: java.lang.StringIndexOutOfBoundsException: String index out of range: -1
java.lang.StringIndexOutOfBoundsException: String index out of range: -1
        at java.lang.String.substring(String.java:1938)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at org.apache.commons.jexl.util.introspection.UberspectImpl$VelMethodImpl.invoke(UberspectImpl.java:231)
        at org.apache.commons.jexl.parser.ASTMethod.execute(ASTMethod.java:104)
        at org.apache.commons.jexl.parser.ASTReference.execute(ASTReference.java:82)
        at org.apache.commons.jexl.parser.ASTReference.value(ASTReference.java:56)
        at org.apache.commons.jexl.parser.ASTReferenceExpression.value(ASTReferenceExpression.java:50)
        at org.apache.commons.jexl.ExpressionImpl.evaluate(ExpressionImpl.java:79)
        at org.apache.commons.jelly.expression.jexl.JexlExpression.evaluate(JexlExpression.java:69)
        at org.apache.commons.jelly.expression.ExpressionSupport.evaluateRecurse(ExpressionSupport.java:61)
        at org.apache.commons.jelly.expression.ExpressionSupport.evaluateAsString(ExpressionSupport.java:46)
        at org.apache.commons.jelly.expression.CompositeExpression.evaluateAsString(CompositeExpression.java:256)
        at org.apache.commons.jelly.expression.CompositeExpression.evaluate(CompositeExpression.java:248)
        at org.apache.maven.jelly.MavenJellyContext.getVariable(MavenJellyContext.java:202)
        at org.apache.commons.jelly.tags.ant.JellyPropsHandler.getProperty(JellyPropsHandler.java:63)
        at org.apache.commons.jelly.tags.ant.JellyPropsHandler.getProperties(JellyPropsHandler.java:87)
        at org.apache.commons.jelly.tags.ant.GrantProject.getProperties(GrantProject.java:170)
        at org.apache.commons.jelly.tags.ant.GrantProject.replaceProperties(GrantProject.java:102)
        at org.apache.tools.ant.taskdefs.Echo.addText(Echo.java:102)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at org.apache.commons.jelly.tags.ant.AntTag.doTag(AntTag.java:172)
        at org.apache.commons.jelly.impl.TagScript.run(TagScript.java:250)
        at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)
        at org.apache.maven.jelly.tags.werkz.MavenGoalTag.runBodyTag(MavenGoalT