02-20-2016, 07:28 AM
(This post was last modified: 03-05-2016, 09:09 AM by soulkris.
Edit Reason: more clear, I hope
)
Hi,
It is difficult to update Vuze and Vuze plugins when Vuze is installed through Ubuntu Software Center / apt-get.
These Ubuntu distributions come with special places for jar files (/usr/share/java which contains symlinks), for startup scripts (/usr/bin) and for config/plugins dir (in config directory $HOME/.azureus). Vuze Ubuntu startup script also adds -Dazureus.install.path="$HOME/.azureus"
Vuze considers that Vuze jar files (i.e. Azureus2 and SWT) must be located in install.dir, hence Vuze plugin update fails and throws an unclear error at the poor user:
Concerned piece of code in SWTUpdateChecker.java (code is modified to be more concise):
Canonical (Ubuntu) is very probably not going to change the location for jar files.
It would be a good that:
- Vuze could identify the custom dir of jar files, and ask for root permissions, if necessary, when updating it.
- Vuze official startup script also looks for jar files in /usr/share/java, and identify that install.dir is config.dir (to still be able to update plugins) and not where the Vuze jar files are.
So the solution for now is to do a manual install, that provides upgradability.
It is difficult to update Vuze and Vuze plugins when Vuze is installed through Ubuntu Software Center / apt-get.
These Ubuntu distributions come with special places for jar files (/usr/share/java which contains symlinks), for startup scripts (/usr/bin) and for config/plugins dir (in config directory $HOME/.azureus). Vuze Ubuntu startup script also adds -Dazureus.install.path="$HOME/.azureus"
Vuze considers that Vuze jar files (i.e. Azureus2 and SWT) must be located in install.dir, hence Vuze plugin update fails and throws an unclear error at the poor user:
Quote:swt.alert.cant.update=SWT library loaded from "%3" can't be automatically updated from version %1 to %2 (must be loaded from "%4"). Please see <A HREF="http://wiki.vuze.com/w/SWT_Cant_Auto_Update">the wiki</A> for details.
Concerned piece of code in SWTUpdateChecker.java (code is modified to be more concise):
Code:
expected_dir = new File( checker.getCheckInstance().getManager().getInstallDir() ).getCanonicalFile();
jar_file_dir = jar_file.getParentFile().getCanonicalFile();
if ( expected_dir.equals( jar_file_dir )){
// everything looks ok
...
} else {
COConfigurationManager.setParameter( "swt.update.prevented.version", update_prevented_version ); // <= ERROR THROWN
}
Canonical (Ubuntu) is very probably not going to change the location for jar files.
It would be a good that:
- Vuze could identify the custom dir of jar files, and ask for root permissions, if necessary, when updating it.
- Vuze official startup script also looks for jar files in /usr/share/java, and identify that install.dir is config.dir (to still be able to update plugins) and not where the Vuze jar files are.
So the solution for now is to do a manual install, that provides upgradability.