# HG changeset patch # User Doug Simon # Date 1400843414 -7200 # Node ID dba1a510fe92d6975da19f5780adaf0a60a4d4c6 # Parent 3e55e9614af7d0dfc15ee01b968d0c4516dbcbec mx: annotation processor paths must include libraries that are also Eclipse containers diff -r 3e55e9614af7 -r dba1a510fe92 mxtool/mx.py --- a/mxtool/mx.py Thu May 22 14:15:01 2014 +0200 +++ b/mxtool/mx.py Fri May 23 13:10:14 2014 +0200 @@ -3398,13 +3398,12 @@ for ap in p.annotation_processors(): for dep in dependency(ap).all_deps([], True): if dep.isLibrary(): - if not hasattr(dep, 'eclipse.container') and not hasattr(dep, 'eclipse.project'): - # Relative paths for "lib" class path entries have various semantics depending on the Eclipse - # version being used (e.g. see https://bugs.eclipse.org/bugs/show_bug.cgi?id=274737) so it's - # safest to simply use absolute paths. - path = _make_absolute(dep.get_path(resolve=True), p.suite.dir) - out.element('factorypathentry', {'kind' : 'EXTJAR', 'id' : path, 'enabled' : 'true', 'runInBatchMode' : 'false'}) - files.append(path) + # Relative paths for "lib" class path entries have various semantics depending on the Eclipse + # version being used (e.g. see https://bugs.eclipse.org/bugs/show_bug.cgi?id=274737) so it's + # safest to simply use absolute paths. + path = _make_absolute(dep.get_path(resolve=True), p.suite.dir) + out.element('factorypathentry', {'kind' : 'EXTJAR', 'id' : path, 'enabled' : 'true', 'runInBatchMode' : 'false'}) + files.append(path) elif dep.isProject(): out.element('factorypathentry', {'kind' : 'WKSPJAR', 'id' : '/' + dep.name + '/' + dep.name + '.jar', 'enabled' : 'true', 'runInBatchMode' : 'false'}) out.close('factorypath')