Buggy code:
public class APE { private APEProperties . APEProperties apeProperties = null ; private ModelInspector modelInspector = null ; private Packager packager = null ; private File projectDir ; private static APE instance = null ; public static void main ( String [ ] args ) throws BundleManagementException , ParseException , IOException , URISyntaxException , ParserConfigurationException , TransformerException , SAXException { } private static URI initAPEBaseURI ( ) { } public static APE getInstance ( ) { } public void start ( ) throws APEConfigurationException , BundleManagementException , ParseException , IOException , URISyntaxException , ParserConfigurationException , TransformerException , SAXException { } private static void initLogger ( ) { } private void initProperties ( ) throws IOException { Properties defaultProperties = new Properties ( ) ; apeProperties = new APEProperties . APEProperties ( ) ; try { URI apePropFileURI = ResourceRegistry . resolveRelativeFilePath ( projectDir , "APE.properties" ) . toURI ( ) ; defaultProperties . load ( new BufferedReader ( new InputStreamReader ( apePropFileURI . toURL ( ) . openStream ( ) ) ) ) ; Notifier . debug ( ( "defaultProperties:<seq2seq4repair_space>" + ( defaultProperties . toString ( ) ) ) , null ) ; apeProperties = new APEProperties . APEProperties ( defaultProperties ) ; for ( Map . Entry < Object , Object > entry : System . getProperties ( ) . entrySet ( ) ) { if ( ( entry . getKey ( ) . toString ( ) . startsWith ( APE_PROP_PREFIX ) ) || ( entry . getKey ( ) . toString ( ) . startsWith ( ARE_PROP_PREFIX ) ) ) { if ( ( entry . getValue ( ) ) == null ) { continue ; } String propValue = entry . getValue ( ) . toString ( ) ; if ( entry . getKey ( ) . equals ( P_APE_MODELS ) ) { propValue = resolveModelURIsToCWD ( entry . getValue ( ) . toString ( ) ) ; } Notifier . debug ( ( ( ( "Overriding<seq2seq4repair_space>ApeProp[" + ( entry . getKey ( ) ) ) + "]=" ) + propValue ) , null ) ; apeProperties . setProperty ( entry . getKey ( ) . toString ( ) , propValue ) ; } } Notifier . debug ( ( ( ( "Adding<seq2seq4repair_space>APE.projectDir//" + ( Packager . CUSTOM_BIN_ARE_FOLDER ) ) + "<seq2seq4repair_space>as<seq2seq4repair_space>search<seq2seq4repair_space>path<seq2seq4repair_space>for<seq2seq4repair_space>model<seq2seq4repair_space>files<seq2seq4repair_space>to<seq2seq4repair_space>" ) + ( APEProperties . APEProperties . P_APE_MODELS ) ) , null ) ; <START_BUG> String projectDirSearchPath = ResourceRegistry . resolveRelativeFilePath ( projectDir , CUSTOM_BIN_ARE_FOLDER ) . getPath ( ) ; <END_BUG> apeProperties . setProperty ( APEProperties . P_APE_MODELS , ( ( ( apeProperties . getProperty ( APEProperties . P_APE_MODELS , "" ) ) + ";" ) + projectDirSearchPath ) ) ; Notifier . info ( ( ( ( "ApeProp[" + ( APEProperties . APEProperties . P_APE_MODELS ) ) + "]=" ) + ( apeProperties . getProperty ( APEProperties . P_APE_MODELS ) ) ) , null ) ; Notifier . debug ( ( "Final<seq2seq4repair_space>apeProperties:<seq2seq4repair_space>" + ( apeProperties . toString ( ) ) ) , null ) ; } catch ( IOException e ) { Notifier . error ( "STOPPING:<seq2seq4repair_space>Initialization<seq2seq4repair_space>of<seq2seq4repair_space>APE<seq2seq4repair_space>properties<seq2seq4repair_space>failed" , e ) ; throw e ; } } private String resolveModelURIsToCWD ( String relativeModelPaths ) { } public APEProperties . APEProperties getApeProperties ( ) { } public void setApeProperties ( APEProperties . APEProperties apeProperties ) { } public static URI getAPEBaseURI ( ) { } public static void setAPEBaseURI ( URI APEBaseURI ) { } public ModelInspector getModelInspector ( ) { } public void setModelInspector ( ModelInspector modelInspector ) { } public Packager getPackager ( ) { } public void setPackager ( Packager packager ) { } }

Fix:
String projectDirSearchPath = ResourceRegistry . resolveRelativeFilePath ( projectDir , CUSTOM_BIN_ARE_MODELS_FOLDER ) . getPath ( ) ;