code: def _getThirdPartyLibs(self, platformIdentifier, configuration):
  		cachedList = CachedDataManager.getCachedDataKey(self.engineVersionHash, 'ThirdPartyLibraries')
  		if cachedList != None:
  			return cachedList
  		tempDir = tempfile.mkdtemp()
  		jsonFile = os.path.join(tempDir, 'ubt_output.json')
  		sentinelFile = os.path.join(self.engineRoot, 'Engine', 'Build', 'InstalledBuild.txt')
  		sentinelBackup = sentinelFile + '.bak'
  		renameSentinel = os.path.exists(sentinelFile) and os.environ.get('UE4CLI_SENTINEL_RENAME', '0') == '1'
  		if renameSentinel == True:
  			shutil.move(sentinelFile, sentinelBackup)
  		try:
  			args = ['-Mode=JsonExport', '-OutputFile=' +jsonFile ] if self.engineVersion['MinorVersion'] >= 22 else ['-gather', '-jsonexport=' + jsonFile, '-SkipBuild']
  			self.runUBTFunc('UE4Editor', platformIdentifier, configuration, args)
  		finally:
  			if renameSentinel == True:
  				shutil.move(sentinelBackup, sentinelFile)
  		result = json.loads(Utility.readFile(jsonFile))
  		modules = [result['Modules'][key] for key in result['Modules']]
  		thirdPartyRoot = os.path.join(self.engineRoot, 'Engine', 'Source', 'ThirdParty')
  		thirdparty = list([m for m in modules if thirdPartyRoot in m['Directory']])
  		try:
  			shutil.rmtree(tempDir)
  		except:
  			pass
  		CachedDataManager.setCachedDataKey(self.engineVersionHash, 'ThirdPartyLibraries', thirdparty)
  		return thirdparty