Hi all,

 

tl;dr: it is a bug in 7.9 it is fixed in 8.0; if it works, don't worry about the error message.

 

The long version:

 

On Sunday 12 October 2014 10:35:09 Jens Erat wrote:

> `basexhttp`, line 11 [2] already is in the basex directory, steps up one

> level in the filesystem to descend a `basex` folder again. I don't quite

> get what the reason is, my guessing is that while refactoring the run

> files [3] the directory structure was changed. Formerly, the core seems

> to be stored in `basex-core` (I don't remember that any more), and this

> line was necessary and reasonable. Furthermore, it is only used to pass

> some `$BXCORE/target/classes" parameter and the same lib folder already

> passed through `$BX`.

 

The $BXCORE variable is actually necessary when the bash scripts are used during the development (the classes from basex-core/target/classes must be included in the class path). Christian can provide more information on this topic.

 

> I see three possibilities to resolve the issue:

>

> - Fix the BaseX run script and remove `$BXCORE` completely, if my

> guessing above is correct

 

The variable should not be present in the scripts shipped with the official release packages . This is a bug in 7.9 and should be fixed in 8.0. Read below for technical details.

 

<bx:internals>

 

The script basex-dist/release.pl searches for lines with "../basex-core" and deletes them [1]. However in 7.9 the basexhttp script still contained "../basex" which is not matched by the release.pl. The problem is fixed with 79c23d4 but the it is only merged in master (63bad345) and not in stable (from which the 7.9 version is tagged).

 

</bx:internals>

 

I hope I managed to shed some light on this problem :)

 

Regards,

Dimitar

 

 

[1] https://github.com/BaseXdb/basex-dist/blob/master/release.pl#L72