jhove
jhove copied to clipboard
Why is jhoveHome needed?
Dev Effort
0.5D investigation
Description
Before running jhove one needs to set jhoveHome
in the configuration file. I don't really understand why this variable is needed, since the relative locations of the launcher scripts and JARs are always fixed. So I think all launch scripts / jars should be able to 'know' their dependencies without any user input (also for each re-install or update the config gets overwritten by the default values, which makes thing unnecessarily complex for a user).
jhoveHome has always been one of the big irritants for setting the application up. I think it dates back to an assumption (predating even my work) that people would launch JHOVE from the command line with the 'java' command rather than a script. If at all possible, the new version should get rid of it.
I'm enthusiastic about getting rid of jhoveHome, but on reflection there's a catch for now. The issue is here in JhoveBase where a public String getJhoveBase() {...}
is declared. This effectively makes up part of JHOVE's API, in that if it's removed it risks breaking dependent code. We're not stuck with it forever but I'm endeavouring to avoid breaking dependant code for this release.
Yvonne Goportis +1