Полная версия решения будет обертывать метод upvotes внутри onClick, передавая e и используя native e.preventDefault ();
upvotes(e){
e.preventDefault();
//do something...
}
render(){
return (<a type="simpleQuery" onClick={(e) => {this.upvotes(e)}}>
upvote
</a>);
{
Вы пробовали использовать задачу zipfileset
?
<jar destfile="stripped.jar">
<zipfileset src="full.jar" excludes="files/to/exclude/**/*.file"/>
</jar>
Например:
<property name="library.dir" value="dist"/>
<property name="library.file" value="YourJavaArchive.jar"/>
<property name="library.path" value="${library.dir}/${library.file}" />
<property name="library.path.new" value="${library.dir}/new-${library.file}"/>
<target name="purge-superfluous">
<echo>Removing superfluous files from Java archive.</echo>
<jar destfile="${library.path.new}">
<zipfileset src="${library.path}" excludes="**/ComicSans.ttf"/>
</jar>
<delete file="${library.path}" />
<move file="${library.path.new}" tofile="${library.path}" />
</target>
Вы должны отстегнуть и заново встать.
<unzip src="myjar.jar" dest="/classes/">
<jar destfile="newjar.jar"
basedir="/classes/"
includes="**/*"
excludes="**/def/*"
/>
Я не уверен, есть ли прямое решение для ваших требований. Я бы рекомендовал взорвать банку в какой-то временный каталог, а затем удалить ненужные файлы классов. Наконец, создайте новую банку с необходимыми файлами классов.
Справочные ссылки:
http://ant.apache.org/manual/Tasks/unzip.html