Buggy code:
private FilterSetCollection globalFilters = new FilterSetCollection ( globalFilterSet ) ; private File baseDir ; private Vector listeners = new Vector ( ) ; private ClassLoader coreLoader = null ; private Hashtable threadTasks = new Hashtable ( ) ; private Hashtable threadGroupTasks = new Hashtable ( ) ; private InputHandler inputHandler = null ; private InputStream defaultInputStream = null ; private boolean keepGoingMode = false ; public void setInputHandler ( InputHandler handler ) { } public void setDefaultInputStream ( InputStream defaultInputStream ) { } public InputStream getDefaultInputStream ( ) { } public InputHandler getInputHandler ( ) { } private FileUtils fileUtils ; private boolean loggingMessage = false ; public Project ( ) { } public void initSubProject ( Project subProject ) { } public void init ( ) throws BuildException { } private AntClassLoader createClassLoader ( ) { } public AntClassLoader createClassLoader ( Path path ) { } public void setCoreLoader ( ClassLoader coreLoader ) { } public ClassLoader getCoreLoader ( ) { } public synchronized void addBuildListener ( BuildListener listener ) { } public synchronized void removeBuildListener ( BuildListener listener ) { } public Vector getBuildListeners ( ) { } public void log ( String message ) { } public void log ( String message , int msgLevel ) { } public void log ( Task task , String message , int msgLevel ) { } public void log ( Target target , String message , int msgLevel ) { } public FilterSet getGlobalFilterSet ( ) { } public void setProperty ( String name , String value ) { } public void setNewProperty ( String name , String value ) { } public void setUserProperty ( String name , String value ) { } public void setInheritedProperty ( String name , String value ) { } private void setPropertyInternal ( String name , String value ) { } public String getProperty ( String name ) { } public String replaceProperties ( String value ) throws BuildException { } public String getUserProperty ( String name ) { } public Hashtable getProperties ( ) { } public Hashtable getUserProperties ( ) { } public void copyUserProperties ( Project other ) { } public void copyInheritedProperties ( Project other ) { } public void setDefaultTarget ( String defaultTarget ) { } public String getDefaultTarget ( ) { } public void setDefault ( String defaultTarget ) { } public void setName ( String name ) { } public String getName ( ) { } public void setDescription ( String description ) { } public String getDescription ( ) { } public void addFilter ( String token , String value ) { } public Hashtable getFilters ( ) { } public void setBasedir ( String baseD ) throws BuildException { } public void setBaseDir ( File baseDir ) throws BuildException { } public File getBaseDir ( ) { } public void setKeepGoingMode ( boolean keepGoingMode ) { } public boolean isKeepGoingMode ( ) { } public static String getJavaVersion ( ) { } public void setJavaVersionProperty ( ) throws BuildException { } public void setSystemProperties ( ) { } public void addTaskDefinition ( String taskName , Class taskClass ) throws BuildException { } public void checkTaskClass ( final Class taskClass ) throws BuildException { ComponentHelper . getComponentHelper ( this ) . checkTaskClass ( taskClass ) ; if ( ! ( Modifier . isPublic ( taskClass . getModifiers ( ) ) ) ) { final String message = taskClass + "<seq2seq4repair_space>is<seq2seq4repair_space>not<seq2seq4repair_space>public" ; log ( message , Project . MSG_ERR ) ; throw new BuildException ( message ) ; } if ( Modifier . isAbstract ( taskClass . getModifiers ( ) ) ) { final String message = taskClass + "<seq2seq4repair_space>is<seq2seq4repair_space>abstract" ; log ( message , Project . MSG_ERR ) ; throw new BuildException ( message ) ; } try { <START_BUG> taskClass . getConstructor ( null ) ; <END_BUG> } catch ( NoSuchMethodException e ) { final String message = "No<seq2seq4repair_space>public<seq2seq4repair_space>no-arg<seq2seq4repair_space>constructor<seq2seq4repair_space>in<seq2seq4repair_space>" + taskClass ; log ( message , Project . MSG_ERR ) ; throw new BuildException ( message ) ; } catch ( LinkageError e ) { String message = ( ( "Could<seq2seq4repair_space>not<seq2seq4repair_space>load<seq2seq4repair_space>" + taskClass ) + ":<seq2seq4repair_space>" ) + e ; log ( message , Project . MSG_ERR ) ; throw new BuildException ( message , e ) ; } if ( ! ( Task . class . isAssignableFrom ( taskClass ) ) ) { TaskAdapter . checkTaskClass ( taskClass , this ) ; } } public Hashtable getTaskDefinitions ( ) { } public void addDataTypeDefinition ( String typeName , Class typeClass ) { } public Hashtable getDataTypeDefinitions ( ) { } public void addTarget ( Target target ) throws BuildException { } public void addTarget ( String targetName , Target target ) throws BuildException { } public void addOrReplaceTarget ( Target target ) { } public void addOrReplaceTarget ( String targetName , Target target ) { } public Hashtable getTargets ( ) { } public Task createTask ( String taskType ) throws BuildException { } public Object createDataType ( String typeName ) throws BuildException { } public void executeTargets ( Vector targetNames ) throws BuildException { } public void demuxOutput ( String output , boolean isWarning ) { } public int defaultInput ( byte [ ] buffer , int offset , int length ) throws IOException { } public int demuxInput ( byte [ ] buffer , int offset , int length ) throws IOException { } public void demuxFlush ( String output , boolean isError ) { } public void executeTarget ( String targetName ) throws BuildException { } public void executeSortedTargets ( Vector sortedTargets ) throws BuildException { } public File resolveFile ( String fileName , File rootDir ) { } public File resolveFile ( String fileName ) { } public static String translatePath ( String toProcess ) { } public void copyFile ( String sourceFile , String destFile ) throws IOException { } public void copyFile ( String sourceFile , String destFile , boolean filtering ) throws IOException { }

Fix:
taskClass . getConstructor ( ( ( Class [ ] ) ( null ) ) ) ;